CommencerCommencez gratuitement

Trouver les trois valeurs les plus élevées par partition

Vous travaillez pour un observatoire de météorologie et la directrice de station vous demande d’identifier les trois températures mensuelles les plus élevées pour chaque station météo pour l’année 2017. Vous savez que, pour y parvenir, vous devrez créer une fonction de fenêtrage pour numéroter les lignes.

Comme vous recherchez les températures mensuelles les plus élevées, veillez à trier par t_monthly_max en ordre décroissant afin que les températures les plus hautes soient numérotées en premier.

Deux tables sont à votre disposition : temperatures_monthly et temperature_stations.

Cet exercice fait partie du cours

<cours>Analyse des séries temporelles dans PostgreSQL</cours>
Voir le cours

Instructions de l’exercice

  • Trouvez les trois températures mensuelles les plus élevées pour chaque station_id et l’state correspondant, pour l’année 2017.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- 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, ___;
Modifier et exécuter le code