問題一覧に戻る
上級関数
問題68: 累積集計 - SUM() OVER, AVG() OVER
ウィンドウ関数を使用した累積集計を学習します。売上の累計、移動平均、累積成長率など、時系列データの分析に欠かせない機能です。
-- 累積売上を計算
SELECT
order_date,
amount,
-- 注文日順の累計
() (ORDER BY order_date) AS running_total
FROM orders;
-- 移動平均を計算
SELECT
month,
sales,
-- 3ヶ月移動平均
() (ORDER BY month ROWS BETWEEN 2 PRECEDING AND CURRENT ROW) AS moving_avg
FROM monthly_sales;