IniziaInizia gratis

Massimo mobile delle medaglie degli atleti cinesi

I frame ti permettono di "dare un'occhiata" avanti o indietro senza dover prima usare le funzioni di fetch relative, LAG e LEAD, per portare i valori delle righe precedenti nella riga corrente.

Questo esercizio fa parte del corso

Statistiche riepilogative e funzioni finestra in PostgreSQL

Visualizza il corso

Istruzioni dell'esercizio

  • Restituisci gli atleti, le medaglie vinte e il massimo di medaglie vinte, confrontando solo gli ultimi due atleti e quello corrente, ordinando per nome degli atleti in ordine alfabetico.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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;
Modifica ed esegui il codice