Kom igångKom igång gratis

Rangordna idrottare efter vunna medaljer

I kapitel 1 använde du ROW_NUMBER för att rangordna idrottare efter tilldelade medaljer. ROW_NUMBER ger dock olika nummer till idrottare med samma antal medaljer, vilket gör den mindre lämplig som rankningsfunktion – om två idrottare har vunnit lika många medaljer bör de ha samma rang.

Den här övningen är en del av kursen

PostgreSQL – Sammanfattande statistik och fönsterfunktioner

Visa kurs

Övningsinstruktioner

  • Rangordna varje idrottare efter antal vunna medaljer – ju fler medaljer, desto högre rang – med identiska rankningar vid lika värden.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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;
Redigera och kör kod