SQL 실행 순서
2026년 8월 28일
SQL 실행 순서
- SQL은 쓰는 순서와 실행되는 순서가 다르다.
- 초보가 겪는 에러 대부분이 이 순서 때문이다.
순서
TEXT
Mermaid스크롤로 확대 · 드래그로 이동
여기서 나오는 규칙들
| 헷갈리는 것 | 이유 |
|---|---|
WHERE에 COUNT(*)를 못 쓴다 | WHERE가 GROUP BY보다 먼저 실행된다. 아직 집계가 없다 |
그럴 땐 HAVING을 쓴다 | HAVING은 GROUP BY 뒤 |
SELECT의 별칭(alias)을 WHERE에서 못 쓴다 | SELECT가 더 나중이라 그 이름이 아직 없다 |
별칭을 ORDER BY에서는 쓸 수 있다 | ORDER BY가 SELECT보다 뒤라서 |
한 줄 정리
FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT. 필터가 집계보다 먼저, SELECT는 거의 마지막이다.