Order by .....

Résolu/Fermé
t671 Messages postés 1419 Date d'inscription lundi 25 février 2008 Statut Membre Dernière intervention 26 février 2024 - 8 mai 2010 à 10:36
 Utilisateur anonyme - 8 mai 2010 à 11:49
Bonjour,

J'aimerais afficher ma table selon un certain critère.
Dans ma table j'ai un champ "pupitre" qui peut recevoir comme donnée t1, t2, bas, bar ou cdc.
J'aimerais pouvoir afficher toutes les données dans l'ordre cdc, t1, t2, bas puis bar..

J'ai essayé cela, et pense ne pas être trop loin :
$select = "SELECT * FROM xxxxxx ORDER BY nom WHERE pupitre like 'cdc', 't1', 't2', 'bas', 'bar' ";

mais ça fonctionne pas ..... J'ai comme message d'erreur :

Erreur : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE pupitre like 'cdc', 't1', 't2', 'bas', 'bar'' at line 1

Merci pour l'aide
A voir également:

5 réponses

gabbermaniac Messages postés 137 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 23 août 2011 12
8 mai 2010 à 10:38
Le order by se place en dernière position
$select = "SELECT * FROM xxxxxx WHERE pupitre like 'cdc', 't1', 't2', 'bas', 'bar' ORDER BY nom";
0
Utilisateur anonyme
8 mai 2010 à 10:38
Salut, normalement un "order by" se met après le "where"
0
t671 Messages postés 1419 Date d'inscription lundi 25 février 2008 Statut Membre Dernière intervention 26 février 2024 11
8 mai 2010 à 11:01
J'ai écrit ceci :

$select = "SELECT * FROM choristes WHERE pupitre like 'cdc' OR 't1' OR 't2' OR 'bas' OR 'bar' ORDER BY nom ASC";

et il ne m'affiche que le premier résultat, c'est à vdire celui de cdc. Pas les autres ....
0
t671 Messages postés 1419 Date d'inscription lundi 25 février 2008 Statut Membre Dernière intervention 26 février 2024 11
8 mai 2010 à 11:07
J'ai trouvé .............

$select = "SELECT * FROM choristes WHERE pupitre like 'cdc' OR pupitre like 't1' OR pupitre like 't2' OR pupitre like 'bas' OR pupitre like 'bar' ORDER BY nom ASC";

A ++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
8 mai 2010 à 11:49
Le "like" comme tu l'a écrit ne sert à rien, tu aurais fait where pupitre = 't2' c'est la même chose.

Tu dois formater la chaîne pour que le "like" puisse agir :

exemple LIKE 'cdc%' trouvera tous les enregistrements qui commencent par cdc.

Tu as de très bonnes documentations sur le SQL ici : https://sql.developpez.com/#commencer-sql
0