Bonjour à tous,
Voila, je cherche à faire un classement de données dans une table : leur attribuer un rang.
MaTable : rang(int), id(int), donnee(string)
Pour l'instant je fais :
Code :
- SELECT id FROM MaTable ORDER BY donnee ASC
|
puis :
Code :
- rangCourant = 1
- POUR tout les enregistrements retournés FAIRE
- UPDATE MaTable SET rang = rangCourant WHERE id = idCourant
- rangCourant ++
- FIN POUR
|
Donc je me retrouve a faire de plus en plus de requetes pour mettre a jour mon rang.
Je me demandais s'il etait possible avec MySQL de faire une seule requete UPDATE en utilissant un ORDER BY, reste que je ne sais pas comment ecrire la requete pour que chaque ligne soit mise a jour en fonction de son numero d'apparition...
Merci de votre aide
Fluminis
Message édité par fluminis le 15-02-2008 à 20:41:48
---------------
http://poemes.iceteapeche.com - http://www.simuland.net