ÎncepețiÎncepe gratuit

Clasarea atleților după medaliile câștigate

În capitolul 1, ai folosit ROW_NUMBER pentru a clasa atleții după medaliile acordate. Totuși, ROW_NUMBER atribuie numere diferite atleților cu același număr de medalii, deci nu este o funcție de clasare utilă; dacă doi atleți au câștigat același număr de medalii, ar trebui să aibă același rang.

Acest exercițiu face parte din cursul

Statistici sumare și funcții de fereastră în PostgreSQL

Vezi cursul

Instrucțiuni pentru exercițiu

  • Clasează fiecare atlet după numărul de medalii câștigate -- cu cât numărul este mai mare, cu atât rangul este mai înalt -- atribuind numere identice în cazul valorilor egale.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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;
Editează și rulează codul