논리 처리 순서

ORDER BY와 LIMIT 적용 순서

실제 물리 실행 계획은 최적화될 수 있지만, SQL을 이해할 때는 이 논리 순서가 별칭, DISTINCT, 정렬, 제한 규칙을 설명합니다.

1

FROM

대상 테이블과 조인으로 출발 집합을 만듭니다.

2

WHERE

개별 행 조건으로 필요한 행만 남깁니다.

3

GROUP BY

남은 행을 집계 기준으로 묶습니다.

4

HAVING

그룹 결과를 조건으로 다시 거릅니다.

5

SELECT

출력 컬럼, 계산식, 별칭을 확정합니다.

6

DISTINCT

필요하면 출력값 조합의 중복을 제거합니다.

7

ORDER BY

최종 출력 후보를 원하는 순서로 정렬합니다.

8

LIMIT / FETCH

정렬된 결과에서 필요한 개수만 반환합니다.

별칭

ORDER BY는 SELECT 이후에 평가되어 SELECT 별칭을 참조합니다.

DISTINCT

중복 제거 후 정렬하므로 ORDER BY 컬럼 제약이 생길 수 있습니다.

LIMIT

정렬 뒤 제한: TOP-N의 의미가 명확하려면 먼저 정렬해야 합니다.