Page 1 sur 1
Order by Field avec champs multiples
Posté : 23 juil. 2008, 13:09
par worm1
Bonjour ,
J'ai une requête sql qui utilise le classement avec FIELD :
Seulement je dois faire la recherche sur plusieurs champs en plus du champ NOM j'ai CODEARTICLE et MOTS aussi...
Est il possible de combiner plusieurs FIELD ? si oui comment ? si non y a t-il une autre solution ?
Merci !
Posté : 23 juil. 2008, 14:23
par Sékiltoyai
Exemple :
Code : Tout sélectionner
ORDER BY FIELD(champ1, 'ksvjh', 'sfjsv', 'jlsgslj') ASC, FIELD(champ2, 'bndf', 'fgdhd', 'sdfgrh') ASC, champ DESC, FIELD(champ3, 'f', 'dfdf', 'fdfdfdfdfdf'), ...;

Posté : 23 juil. 2008, 19:00
par worm1
Heu juste un question
Ca sert à quoi le "champ DESC" au milieu de ta syntaxe?
J'ai un soucis en fait
Voilà ma syntaxe : $sql.="ORDER BY FIELD(NOM,'voiture noire jolie','voiture noire','voiture')ASC";
et les resultats retournées de ma base :
voiture bleu
voiture rouge
voiture noire jolie
voiture noire
voiture
moi je veux :
voiture noire jolie
voiture noire
voiture
voiture bleu
voiture rouge
J'ai merdé où ?
Posté : 29 juil. 2008, 12:43
par worm1
Up , Sékiltoyai , tu m'as pas répondu sur la syntaxe que tu m'a donné, je voudrais comprendre un peu mieux le fonctionnement de la fonction cat je suis bloqué là .
Merci
Posté : 29 juil. 2008, 13:18
par Sékiltoyai
Ouvre un nouveau sujet en expliquant clairement ton problème.
Posté : 29 juil. 2008, 13:35
par Victor BRITO
Ca sert à quoi le "champ DESC" au milieu de ta syntaxe?
DESC permet de trier les résultats en ordre décroissant quand on utilise les commandes ORDER BY et GROUP BY. Par défaut, le tri s'effectue en ordre croissant (et il est donc superflu d'écrire ASC).