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
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;