Mysql_query

Fermé
johnson - 22 janv. 2008 à 20:14
 johnson - 23 janv. 2008 à 09:16
Bonsoir,

Cette fois ci je me demande cmt mettre en forme une requete mysql ds laquelle je souhaite prelever ds la table tous les noms commencant soit par a, b , j ou l (par exemple) avec NECESSAIREMENT array(a, b, j, l) ??

mysql_query ("SELECT nom FROM identity WHERE inarray( array, nom) ");

qqun peut-il 'aider a trouver la syntaxe correcte s'il vous plait ??

Merci bcp

3 réponses

Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 211
22 janv. 2008 à 21:20
Directement avec un array c'est impossible je crois mais moi je ferais comme ça:

$sql = 'SELECT `nom` FROM `identity` WHERE ';
foreach($arr as $lettre)
{
$sql .= ' `nom` LIKE "'.$lettre.'%" OR';
}
$sql = substr($sql, 0, -3);
0
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 225
22 janv. 2008 à 23:48
Hello,

Appuyant la solution de Tiller (subtile la dernière ligne, j'ai mis le temps avant de comprendre :D), je n'ai pas le souvenir qu'il existe l'opérateur INARRAY en SQL, par contre il existe IN...

=> SELECT nom FROM identity WHERE SUBSTR(nom, 1, 1) IN ('a', 'b', 'j', 'l');
0
merci pour vos reponses !! je les teste de suite
0