행 단위 누적을 의도하면 프레임을 명시한다
SELECT order_date, order_id, amount,
SUM(amount) OVER (
ORDER BY order_date, order_id
ROWS BETWEEN UNBOUNDED PRECEDING
AND CURRENT ROW
) AS running_total,
AVG(amount) OVER (
ORDER BY order_date, order_id
ROWS BETWEEN UNBOUNDED PRECEDING
AND CURRENT ROW
) AS running_avg
FROM daily_sales;
ORDER BY만 두면 DBMS 기본 프레임이 적용됩니다. 같은
날짜가 여러 행이면 peer가 함께 묶일 수 있으므로, 행마다 전진하는
누적합은 ROWS와 보조 정렬 기준을 함께 둡니다.