Classement des athlètes en fonction des médailles remportées
Dans le chapitre 1, vous avez utilisé ROW_NUMBER
pour classer les athlètes en fonction des médailles remportées. Cependant, ROW_NUMBER
attribue des numéros différents aux athlètes ayant remporté le même nombre de médailles, ce qui rend cette fonctionnalité de classement peu utile. Si deux athlètes ont remporté le même nombre de médailles, ils devraient avoir le même classement.
Cet exercice fait partie du cours
Statistiques récapitulatives et fonctions de fenêtrage PostgreSQL
Instructions
- Classez chaque athlète en fonction du nombre de médailles qu'il a remportées : plus le nombre est élevé, plus le classement est élevé. En cas d'égalité, le classement est identique.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
WITH Athlete_Medals AS (
SELECT
Athlete,
COUNT(*) AS Medals
FROM Summer_Medals
GROUP BY Athlete)
SELECT
Athlete,
Medals,
-- Rank athletes by the medals they've won
___ OVER (ORDER BY ___ DESC) AS Rank_N
FROM Athlete_Medals
ORDER BY Medals DESC;