bonjour,
je cherche dans une requete à trier une table "resultats" et à attribuer un rang selon un champ "note" dans cette table, pour chaque devoir et eleve.
le rang doit indiquer la position de l'eleve Numero_eleve pour le devoir id_devoir
J'ai le code ci-dessous, le probleme est que le rang fourni est calculé sur l'ensemble des devoirs de la table,
et non pas pour chaque devoir.
Savez-vous comment je dois le modifier?
merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT T1.id_devoir, T1.Numero_eleve, (SELECT Count(Note) FROM resultats T2 WHERE T2.Note<T1.Note)+1 AS Rang, T1.Note FROM resultats AS T1 WHERE (((Note) Is Not Null)) GROUP BY T1.id_devoir, T1.Numero_eleve, T1.Note ORDER BY T1.Note;
Partager