Maison >base de données >tutoriel mysql >Comment puis-je sélectionner des enregistrements SQL contenant des mots spécifiques dans un champ ?
En SQL, vous devrez peut-être obtenir les lignes où un champ spécifique correspond à un ensemble spécifique de mots-clés.
Exemples d'exigences :
Vous souhaitez récupérer tous les enregistrements de la table MyTable dont le champ Column1 contient n'importe quelle combinaison des mots suivants : "word1", "word2" et "word3".
Méthodes possibles :
Prédicats LIKE multiples :
Cette méthode implique l'utilisation d'un opérateur LIKE distinct pour vérifier si la colonne 1 contient chaque mot. Les enregistrements correspondant à n’importe quelle condition LIKE seront renvoyés.
<code class="language-sql">SELECT * FROM MyTable WHERE Column1 LIKE '%word1%' OR Column1 LIKE '%word2%' OR Column1 LIKE '%word3%'</code>
ET en utilisant le prédicat LIKE :
Pour les situations où tous les mots spécifiés doivent être présents dans la colonne 1, plusieurs clauses LIKE peuvent être combinées à l'aide des conditions AND.
<code class="language-sql">SELECT * FROM MyTable WHERE Column1 LIKE '%word1%' AND Column1 LIKE '%word2%' AND Column1 LIKE '%word3%'</code>
Recherche en texte intégral :
Pour une recherche plus efficace, en particulier lorsque vous travaillez avec de grands ensembles de données, utilisez la fonctionnalité de recherche en texte intégral de la base de données. Cependant, la syntaxe spécifique et l'implémentation peuvent varier en fonction du système de base de donné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!