← SQL — Fonctions de fenêtrage
Leçon 1 / 9 — Chapitre 9: Mise en pratique : résultats académiques
Présentation : RANK pour le classement d'une session d'examen
Dernier secteur de ce module : le suivi des notes d'étudiants sur plusieurs sessions d'examen (notes sur 20, plus haut = meilleur).
etudiants
id | nom | filiere
1 | Amina | info
2 | Bruno | info
3 | Chiara | gestion
4 | Driss | gestion
notes_examens
id | etudiant_id | session | note
1 | 1 | 1 | 12
2 | 1 | 2 | 14
3 | 1 | 3 | 16
4 | 2 | 1 | 10
5 | 2 | 2 | 12
6 | 2 | 3 | 14
7 | 3 | 1 | 15
8 | 3 | 2 | 15
9 | 3 | 3 | 18
10 | 4 | 1 | 11
11 | 4 | 2 | 13
12 | 4 | 3 | 15
SELECT e.nom, n.session, n.note,
RANK() OVER (PARTITION BY n.session ORDER BY n.note DESC) AS rang_session
FROM notes_examens n
JOIN etudiants e ON e.id = n.etudiant_id;
À la session 1, les notes triées de la plus haute à la plus basse sont : 15 (Chiara), 12 (Amina), 11 (Driss), 10 (Bruno) — Chiara obtient rang_session = 1.
À retenir :
- Ce chapitre final revisite l'ensemble des techniques du module (RANK, PERCENT_RANK, LAG, AVG cumulé, FIRST_VALUE/LAST_VALUE, NTILE, CASE) sur un nouveau secteur, sans en introduire de nouvelles.
À vous de jouer : quel rang_session obtient Driss à la session 1 (note 11) ?
🔒
Continuez ce module
Débloquez les leçons restantes ainsi que l'attestation finale.
8 000 XOF / 12,20 € / 13,29 $
Débloquez les 78 leçons restantes de ce module
Pour vous communiquer où envoyer le paiement.
Moyen de paiement souhaité
Nous vous contactons pour le paiement — activé dès réception.