tris ascendants et descendants

Invité
Invité n'ayant pas de compte PHPfrance

20 févr. 2007, 16:27

bon, je poste ma requete telle qu'elle est avec un echo $query
SELECT * FROM occasions WHERE PV_TTC != 0 ORDER BY V_KM, V_MILLESIME DESC, PV_TTC 
j'ai beau interchanger les asc et desc, seul le tri du premier champ après ORDER BY est pris en compte.

Invité
Invité n'ayant pas de compte PHPfrance

20 févr. 2007, 16:33

pareil quand je teste directement dans phpmyadmin, tri uniquement sur le premier champ, mais pas d'erreur.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

20 févr. 2007, 16:55

Code : Tout sélectionner

ORDER BY V_KM, V_MILLESIME DESC, PV_TTC
Quand un SGBD lit ce code, il va trier les résultats selon le 1er champ donné (V_KM), puis, s'il trouve plusieurs enregistrements pour lesquels V_KM contient la même valeur, il va trier sur le 2nd champ (V_MILLESIME), et, s'il trouve plusieurs enregistrements pour lesquels les valeurs du couple V_KM-V_MILLESIME sont identiques, il passera au champ suivant.

Est-ce que tu as bien plusieurs enregistrements pour lesquels V_KM est identiques ?


EDIT : bon, je viens de voir que c'était pas la 1ere page du post :?
ma réponse n'apporte donc rien :oops:
Désolé 8-|
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

20 févr. 2007, 17:17

EDIT : bon, je viens de voir que c'était pas la 1ere page du post :?
ma réponse n'apporte donc rien :oops:
Désolé 8-|
Ouais, mais ça fait toujours plaisir de te lire :)

(toujours se mettre dans les petits papiers des dieux ;))
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Invité
Invité n'ayant pas de compte PHPfrance

20 févr. 2007, 17:34

le kilométrage, l'année et le prix sont complètement variables. S'il y a deux fois le même kilométrage dans le champ V_KM, c'est un pur hasard.
Mais j'ai du mal à voir où tu veux en venir...avec ce que tu dis, je comprends qu'on ne peut pas trier un champ si les valeurs contenues ne sont pas identiques...ça serait surprenant non?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

20 févr. 2007, 18:08

Les critères de tris se cumulent si tu les ajoutes. Si tu veux les modifier, il faut les changer d'ordre :

ORDER BY V_KM, V_MILLESIME DESC, PV_TTC
=> tri d'abord par km, ensuite par millesime puis par pv.

ORDER BY V_KM
=> tri par km

ORDER BY V_MILLESIME DESC
=> tri par millesime décroissant

ORDER BY V_MILLESIME ASC, V_KM
=> tri par millesime croissant, puis par km
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...