Leçon 5 / 9 — Chapitre 3: LAG et LEAD approfondis
Calculer une variation entre une ligne et la précédente
Soustraire LAG(colonne) de la colonne courante donne directement l'écart entre deux lignes consécutives — une technique fréquente pour suivre une progression.
SELECT joueur, manche, score,
score - LAG(score) OVER (PARTITION BY joueur ORDER BY manche) AS variation
FROM scores_manche;
Pour la manche 2 de Boris (score 12, contre 8 à la manche 1) : variation = 12 - 8 = 4. Pour la manche 3 de Boris (score 9, contre 12 à la manche 2) : variation = 9 - 12 = -4 — la variation peut être négative. Pour la toute première manche de chaque joueur, LAG(score) vaut NULL, donc variation vaut aussi NULL (une soustraction impliquant NULL renvoie toujours NULL).
À retenir :
colonne - LAG(colonne) OVER (...)calcule directement un écart entre deux lignes consécutives, positif, négatif ou nul.- Cette variation vaut NULL sur la première ligne de chaque partition, faute de ligne précédente à soustraire.
À vous de jouer : quelle est la variation pour la manche 3 de Nadia (14, contre 14 à la manche 2) ?
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 72 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès