SQL 기본 문법 치트시트 (SELECT·JOIN 정리)
SELECT, WHERE, JOIN, GROUP BY, 집계 함수 등 자주 쓰는 SQL 기본 문법을 실행 순서와 함께 한눈에 정리한 치트시트입니다.
기본 조회
SELECT 컬럼1, 컬럼2
FROM 테이블
WHERE 조건
ORDER BY 컬럼 DESC
LIMIT 10;
WHERE 조건
| 연산자 | 의미 |
|---|---|
=, <>, <, > | 비교 |
BETWEEN a AND b | 범위 |
IN (1, 2, 3) | 목록 포함 |
LIKE '김%' | 패턴(% 임의 문자열, _ 한 글자) |
IS NULL | NULL 여부 |
JOIN
| 종류 | 결과 |
|---|---|
INNER JOIN | 양쪽에 모두 있는 행 |
LEFT JOIN | 왼쪽 전부 + 매칭되는 오른쪽 |
RIGHT JOIN | 오른쪽 전부 + 매칭되는 왼쪽 |
SELECT o.id, u.name
FROM orders o
INNER JOIN users u ON u.id = o.user_id;
집계 + GROUP BY
SELECT user_id, COUNT(*) AS cnt, SUM(amount) AS total
FROM orders
GROUP BY user_id
HAVING SUM(amount) > 10000; -- 그룹에 대한 조건은 HAVING
| 함수 | 용도 |
|---|---|
COUNT(*) | 행 개수 |
SUM / AVG | 합계 / 평균 |
MAX / MIN | 최대 / 최소 |
실행(논리) 순서
작성 순서와 실제 처리 순서가 다릅니다.
FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT
WHERE는 그룹화 전 행 필터,HAVING은 그룹화 후 필터입니다.SELECT의 별칭(AS)을WHERE에서 못 쓰는 이유도 이 순서 때문입니다.