SELECT 문법
2026년 8월 28일
SELECT 문법
SQL의 조회문 전체 골격. 순서대로 쓰지만 실행 순서는 다르다.
SQL
열 고르기
SQL
SELECT *를 피하는 이유: 열이 추가되면 결과 모양이 조용히 바뀌고, 필요 없는 데이터까지 읽어 커버링 인덱스를 못 쓴다.
계산과 함수
SQL
| 종류 | 예 |
|---|---|
| 문자열 | CONCAT SUBSTRING TRIM REPLACE LENGTH |
| 숫자 | ROUND FLOOR CEIL ABS MOD |
| 날짜 | NOW() DATE_FORMAT DATE_ADD DATEDIFF |
| NULL 처리 | COALESCE IFNULL NULLIF → NULL과 3값 논리 |
CASE — SQL의 if
SQL
CASE는 SELECT뿐 아니라 WHERE·ORDER BY·집계 안에서도 쓴다.
SQL
이 패턴(조건부 집계)이 실무에서 가장 자주 쓰인다. 한 번의 스캔으로 여러 지표를 뽑는다.
정렬
SQL
ORDER BY에서는 SELECT의 별칭을 쓸 수 있다. WHERE에서는 못 쓴다 (SQL 실행 순서).
개수 제한
SQL
OFFSET은 건너뛴 행을 실제로 읽는다. 깊은 페이지일수록 느려지는 것은 Mongo의 skip과 똑같다. 대안도 같다 — 마지막 키 기준 조회.
SQL
집합 연산
SQL
중복이 없다는 걸 알면 항상 UNION ALL을 쓴다.
한 줄 정리
SELECT ... FROM ... WHERE ... GROUP BY ... HAVING ... ORDER BY ... LIMIT이 전부이고, 조건부 집계(SUM(CASE WHEN ...)) 가 실무의 주력이다.
관련
- SQL
- SQL 실행 순서
- WHERE와 조건식
- GROUP BY와 집계 함수
- NULL과 3값 논리
- JOIN
- SQL ↔ MongoDB 문법 대조표