Maison > base de données > tutoriel mysql > Comment puis-je utiliser efficacement plusieurs conditions avec l'opérateur LIKE de SQL ?

Comment puis-je utiliser efficacement plusieurs conditions avec l'opérateur LIKE de SQL ?

Susan Sarandon
Libérer: 2025-01-08 14:17:42
original
788 Les gens l'ont consulté

Plusieurs conditions pour une utilisation efficace de l'opérateur SQL LIKE

L'opérateur LIKE en SQL est utilisé pour rechercher des chaînes contenant des modèles spécifiés. Habituellement, nous ajoutons des caractères génériques tels que % au modèle de correspondance. Cependant, si nous souhaitons introduire plusieurs conditions à l’aide de LIKE, la méthode OR traditionnelle n’est peut-être pas le meilleur choix.

Alternative : Table temporaire

Une meilleure façon d'introduire plusieurs conditions dans l'opérateur LIKE est de créer une table temporaire. Un exemple est le suivant :

<code class="language-sql">CREATE TEMPORARY TABLE patterns (
  pattern VARCHAR(20)
);

INSERT INTO patterns VALUES ('ABC%'), ('XYZ%'), ('PQR%');

SELECT t.*
FROM tbl t
JOIN patterns p ON (t.col LIKE p.pattern);</code>
Copier après la connexion

Dans cet exemple, nous créons une table temporaire nommée patterns pour stocker plusieurs modèles correspondants. Nous insérons ensuite le schéma requis dans ce tableau. Enfin, nous effectuons une opération JOIN entre la table tbl et la table patterns pour trouver les lignes correspondantes en fonction de la colonne pattern.

Match unique

Dans l'exemple ci-dessus, nous supposons que le modèle est unique et que chaque ligne du tableau tbl ne correspond qu'à un seul modèle. Cependant, s'il existe plusieurs possibilités de correspondance, nous pouvons utiliser le modificateur de requête DISTINCT pour garantir des résultats uniques.

<code class="language-sql">SELECT DISTINCT t.*
FROM tbl t
JOIN patterns p ON (t.col LIKE p.pattern);</code>
Copier après la connexion

Avec cette modification, nous garantissons que chaque ligne de la table tbl n'apparaît qu'une seule fois dans les résultats, même si elle correspond à plusieurs modèles.

How Can I Efficiently Use Multiple Conditions with SQL's LIKE Operator?

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