CommencezCommencez gratuitement

Maximum mobile des médailles des athlètes chinois

Les encadrements vous permettent de « jeter un coup d'œil » vers l'avant ou vers l'arrière sans devoir d'abord utiliser les fonctions de repérage relatif LAG et LEAD pour récupérer les valeurs des lignes précédentes dans la ligne courante.

Cette activité fait partie du cours

Fonctions de synthèse et de fenêtre dans PostgreSQL

Voir le cours

Instructions de l’exercice

  • Retournez les athlètes, les médailles obtenues et le nombre maximal de médailles obtenues, en ne comparant que les deux derniers athlètes et l'athlète courant, le tout ordonné par le nom des athlètes en ordre alphabétique.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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;
Modifier et exécuter le code