Recherche de plusieurs valeurs dans un seul champ à l'aide de SQL
En SQL, la recherche de plusieurs valeurs dans le même champ peut être réalisée en utilisant soit les opérateurs IN ou OR.
Utilisation de l'opérateur IN
L'opérateur IN vous permet de spécifier un ensemble de valeurs distinctes à faire correspondre à un champ. Par exemple :
<code class="sql">SELECT name FROM products WHERE name IN ('Value1', 'Value2', ...);</code>
Cette requête renverra toutes les lignes où le champ de nom contient l'une des valeurs spécifiées.
Utilisation de l'opérateur OR
L'opérateur OR est utilisé pour combiner plusieurs conditions, dont chacune peut être vraie. Pour rechercher plusieurs valeurs à l'aide de OR, vous devez utiliser la syntaxe suivante :
<code class="sql">SELECT name FROM products WHERE name LIKE '%Value1' OR name LIKE '%Value2';</code>
Cette requête renverra toutes les lignes dont le champ de nom contient soit Value1, soit Value2.
Comparaison à votre exemple
Dans votre exemple, vous utilisez l'opérateur AND, qui nécessite que toutes les conditions soient vraies. Pour obtenir le résultat souhaité, vous devez plutôt utiliser l'opérateur OR :
<code class="sql">SELECT name FROM products WHERE name LIKE '%$search[1]%' OR name LIKE '%$search[2]%';</code>
Cette modification entraînera le renvoi par la requête de résultats correspondant à l'une ou l'autre des valeurs spécifiées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!