パーティションごとに上位3つの値を見つける
あなたは気象観測所で働いており、所長から2017年について各気象観測所ごとの月別最高気温の上位3件を特定するよう依頼されています。これを求めるには、行に番号を振るウィンドウ関数を作成する必要があるとわかっています。
月別の最高気温を探しているので、最も高い気温から番号が振られるよう、t_monthly_max を降順で並べ替える必要があります。
利用できるテーブルは temperatures_monthly と temperature_stations の2つです。
この演習はコースの一部です
PostgreSQLで学ぶ時系列分析
演習の手順
- 2017年について、各
station_idと対応するstateごとに、月別最高気温の上位3件を取得してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
-- Three highest monthly temps per station for 2017
SELECT * FROM
( SELECT
ts.station_id,
ts.state,
tm.year_month,
tm.t_monthly_max,
___ AS rank
FROM temperatures_monthly AS tm
JOIN temperature_stations AS ts USING(station_id)
WHERE ___
) AS temp_2017
WHERE ___
ORDER BY station_id, ___;