Maison >base de données >tutoriel mysql >Comment puis-je obtenir une correspondance de mots entiers dans les recherches MySQL ?
Recherches précises de mots clés dans MySQL à l'aide d'expressions régulières
Améliorer la précision de la recherche avec les expressions régulières
Pour une correspondance précise de mots entiers dans les requêtes MySQL, exploitez l'opérateur REGEXP
en conjonction avec des marqueurs de limites de mots. Cela garantit que vos mots clés ne correspondent que lorsqu'il s'agit de mots indépendants, évitant ainsi les correspondances partielles au sein de mots plus grands.
Anciennes versions de MySQL (pré-8.0.4) :
<code class="language-sql">SELECT * FROM table WHERE keywords REGEXP '[[:<:]]rid[[:>:]]'</code>
Les marqueurs [[:<:]]
et [[:>:]]
définissent les limites des mots.
MySQL 8.0.4 et versions ultérieures :
Les versions MySQL 8.0.4 et ultérieures utilisent un moteur d'expression régulière différent. L'approche recommandée consiste désormais à utiliser le marqueur de limite de mot standard b
:
<code class="language-sql">SELECT * FROM table WHERE keywords REGEXP '\brid\b'</code>
Notez la double barre oblique inverse (\
) qui échappe au caractère barre oblique inverse. Ceci est crucial pour une interprétation correcte par le moteur 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!