코딩/SQL
[SQL] 여러 개의 조건 걸기 / 데이터 정렬
저녕이
2025. 3. 9. 15:34
728x90
반응형
✏️ 여러 개의 조건 걸기
- AND 가 OR 보다 우선순위 높음 → 먼저 실행되길 원하는 조건을 괄호() 씌우기
- [조건A] AND [조건B] : A와 B 조건 둘다 만족하는 경우만 TRUE
- [조건A] OR [조건B] : A와 B 조건 둘 중에 하나라도 만족 하는 경우 TRUE
# 성별이 남자이면서 서울에 살고 있는 사람들에 대한 데이터
SELECT * FROM copang_main.member
WHERE gender = 'm' AND address LIKE '서울%' ;
# 봄 또는 가을에 가입한 사람들에 대한 데이터
SELECT * FROM copang_main.member
WHERE (MONTH(sign_up_day) BETWEEN 3 AND 5)
OR (MONTH(sign_up_day) BETWEEN 9 AND 11) ;
# 남자 회원들 중에서 키가 180이상 혹은 여자 회원들 중에서 키가 170이상
SELECT * FROM copang_main.member
WHERE (gender = 'm' AND height >= 180)
or (gender = 'f' AND height >= 170) ;
✏️ 데이터 정렬
- row들을 특정 column을 기준으로 정렬 (오름차순, 내림차순)
- NULL이 있을 경우, NULL은 가장 작은 데이터
ORDER BY
- 특정 열 기준으로 정렬
- ASC : 오름차순(default) (작은 → 큰)
- DESC : 내림차순 (작은 → 큰)
- 콤마(,)로 연결하여 여러개의 정렬 기준을 설정
# 키를 기준으로 오름차순 정렬
SELECT * FROM copang_main.member
ORDER BY height ;
# 키를 기준으로 내림차순 정렬
SELECT * FROM copang_main.member
WHERE gender = 'm' AND weight >= 70
ORDER BY height DESC;
# 가입연도 내림차순 정렬 후 email 오름차순 정렬
SELECT YEAR(sign_up_day), email FROM copang_main.member
ORDER BY YEAR(sign_up_day) DESC, email ASC;
LIMIT
- 일부만 추려서 확인
- LIMIT N : 10줄만 추출
- LIMIN M, N : M번째 row부터 N줄만 추출
# sign_up_day를 내림차순으로 정렬 후 10명만 추출
SELECT * FROM copang_main.member
ORDER BY sign_up_day DESC
LIMIT 10 ;
# sign_up_day를 내림차순으로 정렬 후 9번째, 10번째만 추출
SELECT * FROM copang_main.member
ORDER BY sign_up_day DESC
LIMIT 8,2 ; # 8번째 row부터 2개만 추출 (0부터 count)
📖 참고 강의
코드잇 | SQL로 하는 데이터 분석
코드잇 | SQL로 하는 데이터 관리
728x90
반응형