OVER()

OVER 절을 구성하는 세 요소

PARTITION BY, ORDER BY, FRAME은 각각 ‘누구와 비교할지’, ‘어떤 순서인지’, ‘어디까지 볼지’를 정합니다.

PARTITION BY
ORDER BY
ROWS/RANGE
PARTITION BY 윈도우를 나누는 기준

생략하면 전체 결과가 하나의 윈도우가 됩니다.

PARTITION BY department
ORDER BY 윈도우 내부 순서

순위 함수에서는 사실상 필수이고, 집계 함수에서는 누적 계산의 기준이 됩니다.

ORDER BY salary DESC
FRAME 계산에 포함할 행 범위

현재 행까지, 앞뒤 N행, 전체 파티션 등 계산 폭을 정합니다.

ROWS BETWEEN ...
AND CURRENT ROW
OVER() 안에 무엇을 쓰느냐가 “같은 함수인데 결과가 달라지는” 가장 큰 이유입니다.