requete qui sélectionne et numérote

Eléphant du PHP | 331 Messages

05 août 2006, 11:44

Bonjour à tous,

Je voudrais faire une requete select simple, avec un ordre de tri sur un champ, et au passage, j'aimerais attribuer un n° d'ordre à un autre champ dépendant du tri cité précedemment.

Est-ce possible ? si oui, comment ? J'espère avoir été clair ...

Merci d'avance pour votre aide ! :D

Mammouth du PHP | 19672 Messages

05 août 2006, 12:14

Pour le tri, une clause ORDER BY nom-du-champ ASC (ou DESC) suffirait. Mais je saisis mal ce que tu veux dire par attribuer un n° d'ordre : tu veux insérer ce n° dans ta base ou ce n'est que pour l'affichage ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 331 Messages

05 août 2006, 12:43

Pour le tri et l'affichage, c'est ok, je sais faire. Par contre, ma difficulté, c'est le stocker dans la bdd dans un champ prévu à cet effet.

En fait, j'ai une table avec 3 champs : Joueur, NBPoints et Classement.

Bien en fait, je voudrais stocker le classement de mes joueurs selon le nb de points qu'ils ont.

Mammouth du PHP | 19672 Messages

05 août 2006, 12:53

La solution la moins compliquée que je verrais si ta version de SGBD le permet, c'est une procédure stockée qui effectuerait les calculs nécessaires avec la mise à jour dans ta table de classement et un trigger sur l'insertion des points qui appelerait cette procédure ...
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 331 Messages

05 août 2006, 13:00

ok, c'est bien le chemin que je comptais prendre alors ! Je vais faire ainsi !

Par contre, question vocabulaire, et histoire de comprendre, qu'appelles-tu un "trigger" ?

Mammouth du PHP | 19672 Messages

05 août 2006, 13:09

Pour faire court, la procédure stockée sera une fonction et le trigger un déclencheur : il va réagir selon les paramètres que tu auras indiqué, donc par exemple, tu peux avoir un déclencheur qui va réagir lorsque tu effectues une insertion dans une table particulière.

Si tu utilises MySQL, fouille la doc sur le sujet
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 331 Messages

05 août 2006, 13:12

ok, MERCI !