Найдите три наибольших значения в каждом разделе
Вы работаете в метеорологической обсерватории, и директор станции поручил вам определить три наибольших значения месячной температуры для каждой метеостанции за 2017 год. Чтобы решить эту задачу, вам нужно создать оконную функцию для нумерации строк.
Поскольку вы ищете наибольшие значения месячной температуры, убедитесь, что сортировка по столбцу t_monthly_max выполняется в порядке убывания — тогда наибольшие температуры получат первые номера.
Вам доступны две таблицы: temperatures_monthly и temperature_stations.
Это упражнение является частью курса
Анализ временных рядов в PostgreSQL
Инструкции к упражнению
- Найдите три наибольших значения месячной температуры для каждой
station_idи соответствующегоstateза 2017 год.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
-- 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, ___;