開始使用免費開始

找出每個分割區的前三高數值

你在氣象觀測站工作。站長要你找出每個氣象測站在 2017 年的月最高溫前三高。你知道要達成這件事,需要建立一個視窗函式來替各列編號。

因為你要找的是月最高溫,所以要確保以遞減順序依 t_monthly_max 排序,讓最高溫的紀錄先得到編號。

你可以使用兩張資料表:temperatures_monthlytemperature_stations

本練習屬於課程

PostgreSQL 的時間序列分析

檢視課程

練習說明

  • 找出 2017 年每個 station_id 及其對應 state 的月最高溫前三高紀錄。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

-- 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, ___;
編輯並執行程式碼