Bonjour à tous.
Je suis en train de travailler sur la génération de bulletin de notes de élèves en pdf. Dans ce bulletin, je veux pourvoir afficher le rang de l'élève dans chaque matière.

la structure de ma table est la suivante:

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
CREATE TABLE `note` (
  `id_etu` int(10) unsigned NOT NULL default '0',
  `id_eval_note` int(10) unsigned NOT NULL default '0',
  `note` float unsigned NOT NULL default '0',
  PRIMARY KEY  (`id_etu`,`id_eval_note`)
) ;

id_etu= identifiant de l'étudiant
id_eval_note= identifiant de l'evaluation

Et voici la requête que j'ai utilisée:

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT a1.note,a1.id_etu, COUNT(a2.note) Rang
FROM note a1, note a2
WHERE a1.note <= a2.note or (a1.note=a2.note  and a1.id_etu=a2.id_etu)
GROUP BY a1.id_etu, a1.note
ORDER BY a1.note DESC, a1.id_etu DESC;

Le problème est que les résultats obtenus ne sont pas ce à quoi je m'attendais.
Je vous supplie de me venir en aide.
Merci d'avance!