Maison > base de données > tutoriel mysql > Comment utiliser efficacement l'opérateur MySQL LIKE pour plusieurs valeurs ?

Comment utiliser efficacement l'opérateur MySQL LIKE pour plusieurs valeurs ?

Mary-Kate Olsen
Libérer: 2025-01-06 00:18:38
original
342 Les gens l'ont consulté

How to Use MySQL LIKE Operator for Multiple Values Effectively?

Utilisation de l'opérateur MySQL Like pour plusieurs valeurs

Problème :

Une requête MySQL tentant de utiliser l'opérateur LIKE pour faire correspondre les valeurs contenant "sports" ou "pub" ne produit pas le résultat souhaité résultats.

Requête :

SELECT * FROM table WHERE interests LIKE ('%sports%', '%pub%')
Copier après la connexion

Comportement attendu :

La requête doit renvoyer des lignes où les "intérêts" le champ contient soit "sports" soit "pub" ou les deux.

Explication :

Le problème se pose car l'opérateur LIKE avec plusieurs modèles nécessite des conditions OR. La requête fournie tente d'utiliser deux opérateurs LIKE consécutifs sans logique OU appropriée, ce qui entraîne une correspondance incorrecte.

Solution 1 : Condition OU

Une solution plus simple consiste à utiliser l'opérateur OR pour préciser les multiples critères de correspondance :

SELECT * FROM table WHERE interests LIKE '%sports%' OR interests LIKE '%pub%'
Copier après la connexion

Solution 2 : REGEXP Opérateur

Une approche alternative consiste à utiliser l'opérateur REGEXP (expression régulière), qui prend en charge la correspondance de modèles à l'aide d'une seule expression :

SELECT * FROM table WHERE interests REGEXP 'sports|pub'
Copier après la connexion

Cette expression utilise le | (barre verticale) pour spécifier un OU logique entre les deux mots-clés, ce qui donne un modèle unique qui correspond à « sports » ou à « pub », ou aux deux.

Notez que l'opérateur REGEXP est plus efficace pour faire correspondre plusieurs modèles. par rapport à l'utilisation de LIKE avec des conditions OR.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal