北欧選手のメダル数の移動最大値
フレームを使うと、ウィンドウ関数に渡す入力行を、開始位置と終了位置を指定したスライディングウィンドウに制限できます。
ウィンドウ関数にフレームを追加すると、行ごとに入力がスライドする「移動」系の指標を計算できるようになります。
この演習はコースの一部です
PostgreSQL 集計統計とウィンドウ関数
演習の手順
- 年、獲得メダル数、そして最大獲得メダル数を返します。比較対象は現在の年とその翌年のみとします。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
WITH Scandinavian_Medals AS (
SELECT
Year, COUNT(*) AS Medals
FROM Summer_Medals
WHERE
Country IN ('DEN', 'NOR', 'FIN', 'SWE', 'ISL')
AND Medal = 'Gold'
GROUP BY Year)
SELECT
-- Select each year's medals
___,
___,
-- Get the max of the current and next years' medals
___ OVER (ORDER BY ___ ASC
ROWS BETWEEN ___
AND ___) AS Max_Medals
FROM Scandinavian_Medals
ORDER BY Year ASC;