Gewinnende nach gewonnenen Medaillen sortieren
In Kapitel 1 hast du ROW_NUMBER verwendet, um die Athleten nach gewonnenen Medaillen zu ordnen. Allerdings gibt ROW_NUMBER Athleten mit der gleichen Anzahl an Medaillen unterschiedliche Nummern, sodass dabei keine eigentliche Rangliste entsteht. Wenn zwei Athleten die gleiche Anzahl an Medaillen haben, sollten sie auch den gleichen Rang haben.
Diese Übung ist Teil des Kurses
PostgreSQL: Zusammenfassende Statistiken und Fensterfunktionen
Anleitung zur Übung
- Erstelle eine Rangliste aller Teilnehmenden nach der Anzahl der gewonnenen Medaillen – je mehr Medaillen, desto höher der Rang – und gleiche Werte ergeben die gleiche Rangposition.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
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;