LoslegenKostenlos loslegen

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

Kurs anzeigen

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;
Code bearbeiten und ausführen