ORDER BY dans l'odre d'une condition WHERE IN

Invité
Invité n'ayant pas de compte PHPfrance

04 mai 2009, 19:26

Bonjour,

Je rencontre un souci , je n'ai jamais eu besoins de ce type de requete.
je dois faire une requete toute simple mais je rencontre un souci sur l'odre d'affichage des données

ci dessous j'ai fais une condition pour sortir tout les ID 9,8,55,4,7

comment puis faire pour que l'ordre soit tel que je l'ai inséré dans la requete ?

1 > 9
2 > 8
3 > 55
4 > 4
5 > 7

$query = mysql_query("SELECT table1.ID,nom,table2.login,table2.id 
FROM chiens 
LEFT JOIN table2 ON table2.id=table1.nom
WHERE table1.ID IN (9,8,55,4,7) ");
merci d'avance

Mammouth du PHP | 804 Messages

04 mai 2009, 19:28

oublier de me loger :oops:

Mammouth du PHP | 661 Messages

04 mai 2009, 19:31

comment puis faire pour que l'ordre soit tel que je l'ai inséré dans la requete ?
en faisant une requête par éléments, et en plaçant cette requête dans une boucle ... je crois que c'est la seule solution ...

Mammouth du PHP | 804 Messages

04 mai 2009, 19:58

oh non c'est pas possible :?
va falloire que je crée une clé par id avant la requete alors :?
c'est compliqué pour une simple histoire d'ordre :x
$condition = "12,5,45,78,89,64"); 
$array_chaine = explode(',', $condition);  // je transforme cette condition en array

foreach($array_chaine as $lid) {
$val ++;
$table[$val] = $lid ;
echo $table[$val] ." devient " .$val. " <br>";
}
ensuite je dois mettre toute mes donnée en tableau associatif et les afficher par apport a $table[$val] :?
je ne peu pas croire que php n'a pas prévus plus simple 8-)

Mammouth du PHP | 804 Messages

04 mai 2009, 21:06

c'est bon j'ai réussi à le faire en une seule requete :wink: merci pour le coup de pouce

ViPHP
ViPHP | 4039 Messages

04 mai 2009, 21:17

je crois que c'est la seule solution ...
Alors heureusement que je passe par la :wink:

ORDER BY permet le tri personnalisé. J'ai dégoté ce petit lien qui te l'expliquera:
http://case.oncle-tom.net/2007/08/21/my ... leatoires/


Et je ne sais pas si c'est moi, mais c'est toujours une plaie que de chercher dans la doc MySQL pour y trouver quelque chose.
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Mammouth du PHP | 661 Messages

05 mai 2009, 08:54

je crois que c'est la seule solution ...
Alors heureusement que je passe par la :wink:
t'as raison !! :agenouille:

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

05 mai 2009, 09:35

Intéressant cet article ...
hop, bookmarké ;)
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