ÎncepețiÎncepe gratuit

Maximul mobil al medaliilor atletelor chineze

Cadrele îți permit să „privești" înainte sau înapoi fără a folosi mai întâi funcțiile de accesare relativă, LAG și LEAD, pentru a aduce valorile rândurilor anterioare în rândul curent.

Acest exercițiu face parte din cursul

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

Vezi cursul

Instrucțiuni pentru exercițiu

  • Returnează atleții, medaliile obținute și numărul maxim de medalii obținute, comparând doar ultimii doi atleți și atletul curent, ordonând după numele atleților în ordine alfabetică.

Exercițiu interactiv practic

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

WITH Chinese_Medals AS (
  SELECT
    Athlete, COUNT(*) AS Medals
  FROM Summer_Medals
  WHERE
    Country = 'CHN' AND Medal = 'Gold'
    AND Year >= 2000
  GROUP BY Athlete)

SELECT
  -- Select the athletes and the medals they've earned
  ___,
  ___,
  -- Get the max of the last two and current rows' medals 
  ___ OVER (ORDER BY ___ ASC
            ROWS BETWEEN ___
            AND ___) AS Max_Medals
FROM Chinese_Medals
ORDER BY Athlete ASC;
Editează și rulează codul