Maison > base de données > tutoriel mysql > Comment faire correspondre efficacement plusieurs valeurs à l'aide de LIKE dans les requêtes MySQL ?

Comment faire correspondre efficacement plusieurs valeurs à l'aide de LIKE dans les requêtes MySQL ?

Barbara Streisand
Libérer: 2025-01-06 00:48:39
original
565 Les gens l'ont consulté

How to Efficiently Match Multiple Values Using LIKE in MySQL Queries?

Requête MySQL pour faire correspondre plusieurs valeurs à l'aide de LIKE

Lorsque vous traitez des requêtes MySQL impliquant plusieurs valeurs dans une condition LIKE, un défi courant consiste à faire correspondre les lignes contenant l'un des valeurs spécifiées. Dans ce cas précis, la requête tente de trouver les enregistrements dont le champ d'intérêts contient soit « sports », soit « pub », ou les deux. Cependant, la requête fournie ne produit pas les résultats escomptés.

Solutions alternatives

Pour résoudre ce problème, il existe plusieurs solutions alternatives :

1. Utilisation de l'opérateur OR :

L'opérateur OR peut être utilisé pour connecter plusieurs conditions LIKE :

WHERE interests LIKE '%sports%' OR interests LIKE '%pub%'
Copier après la connexion

2. Utilisation de l'opérateur REGEXP :

L'opérateur REGEXP fournit un moyen plus concis et efficace de faire correspondre plusieurs valeurs :

WHERE interests REGEXP 'sports|pub'
Copier après la connexion

Dans ce cas, REGEXP fera correspondre les lignes qui contiennent soit des « sports » ' ou 'pub' dans le champ des intérêts.

3. Utilisation de l'opérateur IN :

Une autre option consiste à utiliser l'opérateur IN pour vérifier plusieurs valeurs dans un ensemble :

WHERE interests IN ('sports', 'pub')
Copier après la connexion

Explication de REGEXP

Le REGEXP L'opérateur utilise un modèle d'expression régulière pour faire correspondre les valeurs spécifiées. Dans ce cas, le modèle « sports|pub » correspond à n'importe quelle chaîne contenant « sports » ou « pub ».

Le « | » Le symbole dans l'expression régulière représente un OU logique, indiquant que le modèle correspond si l'une des deux valeurs est présente dans la chaîne d'entrée.

Conclusion

Utilisation de l'opérateur OR, de l'opérateur REGEXP ou L'opérateur IN associé à la condition LIKE offre plus de flexibilité et d'efficacité lors de la correspondance de plusieurs valeurs dans les requêtes MySQL.

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