Maison > base de données > tutoriel mysql > Comment puis-je combiner les fonctionnalités LIKE et IN dans SQL Server pour la correspondance de modèles ?

Comment puis-je combiner les fonctionnalités LIKE et IN dans SQL Server pour la correspondance de modèles ?

Mary-Kate Olsen
Libérer: 2025-01-16 22:50:11
original
341 Les gens l'ont consulté

How Can I Combine LIKE and IN Functionality in SQL Server for Pattern Matching?

Combiner LIKE et IN pour une correspondance de modèles flexible dans SQL Server

Les requêtes SQL Server peuvent exploiter la puissance de LIKE et de IN pour une correspondance de modèles sophistiquée et des comparaisons d'ensembles. Cependant, les combiner directement n’est pas syntaxiquement valide. La solution réside dans l'utilisation stratégique de l'opérateur OR.

Disons que vous souhaitez rechercher des lignes dans lesquelles une colonne correspond à plusieurs modèles. Au lieu de tenter une combinaison directe LIKE et IN, utilisez plusieurs conditions LIKE jointes par OR :

<code class="language-sql">SELECT *
FROM your_table
WHERE
  column LIKE 'Text%'
  OR column LIKE 'Hello%'
  OR column LIKE 'That%';</code>
Copier après la connexion

Cette requête recherche efficacement les lignes où column commence par « Texte », « Bonjour » ou « Cela ». Il renverra des lignes contenant :

  • "Texte"
  • "Bonjour"
  • "Ça"
  • "Analyse Textuelle"
  • "Bonjour le monde"
  • "C'est la question"

Cette approche reflète la fonctionnalité de IN (qui effectue des contrôles d'égalité), mais l'adapte pour la correspondance de modèles avec LIKE. Notez qu'un IN direct avec des motifs génériques (IN ('Text%', 'Hello%', 'That%')) est une syntaxe SQL incorrecte.

Pour une efficacité améliorée, envisagez de consolider plusieurs conditions LIKE en une seule instruction LIKE à l'aide de l'opérateur | (OR) dans le modèle :

<code class="language-sql">SELECT *
FROM your_table
WHERE
  column LIKE '%Text%|%Hello%|%That%';</code>
Copier après la connexion

Cette requête optimisée obtient le même résultat avec un plan d'exécution plus concis et potentiellement plus rapide. N'oubliez pas d'échapper à tout caractère spécial dans vos modèles de recherche si nécessaire.

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