始める無料で始める

パーティションごとに上位3つの値を見つける

あなたは気象観測所で働いており、所長から2017年について各気象観測所ごとの月別最高気温の上位3件を特定するよう依頼されています。これを求めるには、行に番号を振るウィンドウ関数を作成する必要があるとわかっています。

月別の最高気温を探しているので、最も高い気温から番号が振られるよう、t_monthly_max を降順で並べ替える必要があります。

利用できるテーブルは temperatures_monthlytemperature_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, ___;
コードを編集して実行