スライディング・ウィンドウ(1)
スライディング・ウィンドウを使うと、PRECEDING、FOLLOWING、CURRENT ROW などの関数を組み合わせて、ウィンドウ内の任意の 2 点間で累積計算を行えます。データセットの範囲を指定することで、集約関数を使って累積カウント・合計、移動平均などを計算できます。
この練習では、動画で説明した例をさらに発展させます。2011/2012 シーズンにホームチームとして試合に臨んだ FC Utrecht の得点の累積合計を計算しましょう。シーズン終盤では、ホームとアウェーのどちらでより多くの得点を決めているでしょうか?
この演習はコースの一部です
SQL のデータ操作
演習の手順
- 以下の手順でウィンドウ関数を完成させましょう。
- FC Utrecht がホームで決めた得点の累積合計を求める。
- ホーム得点の移動平均を求める。
- 移動平均と累計の両方を日付順(
BYthedate)で並び替える。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
SELECT
date,
home_goal,
away_goal,
-- Create a running total and running average of home goals
___(home_goal) ___(ORDER BY ___
ROWS BETWEEN ___ ___ AND ___ ___) AS running_total,
___(home_goal) ___(ORDER BY ___
ROWS BETWEEN ___ ___ AND ___ ___) AS running_avg
FROM match
WHERE
hometeam_id = 9908
AND season = '2011/2012';