Aan de slagGa gratis aan de slag

Schuivend maximum van medailles van Chinese atleten

Frames laten je vooruit of achteruit "gluren" zonder eerst de relatieve ophaalfuncties LAG en LEAD te gebruiken om waarden van vorige rijen naar de huidige rij te halen.

Deze oefening maakt deel uit van de cursus

PostgreSQL Samenvattingsstatistieken en vensterfuncties

Cursus bekijken

Oefeninstructies

  • Geef de atleten, de behaalde medailles en het maximale aantal behaalde medailles terug, waarbij je alleen de laatste twee en de huidige atleten vergelijkt, en sorteer op de namen van de atleten in alfabetische volgorde.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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;
Code bewerken en uitvoeren