← SQL — Fonctions de fenêtrage
Leçon 8 / 9 — Chapitre 9: Mise en pratique : résultats académiques
Cas pratique : qui a le moins progressé ?
Ce cas pratique combine FIRST_VALUE/LAST_VALUE (leçon 5) pour identifier l'étudiant dont la progression a été la plus faible — un résultat parfois contre-intuitif.
WITH progression AS (
SELECT DISTINCT e.nom,
LAST_VALUE(n.note) OVER w - FIRST_VALUE(n.note) OVER w AS ecart_total
FROM notes_examens n
JOIN etudiants e ON e.id = n.etudiant_id
WINDOW w AS (
PARTITION BY n.etudiant_id ORDER BY n.session
ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
)
)
SELECT nom, ecart_total
FROM progression
ORDER BY ecart_total ASC;
Écarts totaux : Amina +4, Bruno +4, Driss +4, Chiara +3. Chiara, pourtant la meilleure élève (moyenne finale 16), est celle qui a le moins progressé en valeur absolue — elle partait déjà d'un niveau élevé (15 à la session 1).
À retenir :
- Avoir la meilleure moyenne finale et avoir le plus progressé sont deux mesures différentes : ce cas pratique le démontre concrètement, Chiara étant la meilleure élève mais pas celle ayant le plus progressé.
À vous de jouer : combien d'étudiants ont un ecart_total de +4 (Amina, Bruno et Driss) ?
🔒
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