ホームページ >データベース >mysql チュートリアル >MySQL 検索で単語全体の一致を実現するにはどうすればよいですか?

MySQL 検索で単語全体の一致を実現するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2025-01-14 06:13:48329ブラウズ

How Can I Achieve Whole Word Matching in MySQL Searches?

正規表現を使用した MySQL での正確なキーワード検索

正規表現による検索精度の向上

MySQL クエリで単語全体を正確に一致させるには、単語境界マーカーと組み合わせて REGEXP 演算子を利用します。 これにより、キーワードは独立した単語である場合にのみ一致し、より大きな単語内の部分一致を防ぐことができます。

古い MySQL バージョン (8.0.4 より前):

<code class="language-sql">SELECT *
FROM table 
WHERE keywords REGEXP '[[:<:]]rid[[:>:]]'</code>

[[:<:]] および [[:>:]] マーカーは単語の境界を定義します。

MySQL 8.0.4 以降:

MySQL バージョン 8.0.4 以降では、別の正規表現エンジンが使用されます。 現在推奨されるアプローチは、標準の単語境界マーカー b:

を使用することです。
<code class="language-sql">SELECT *
FROM table 
WHERE keywords REGEXP '\brid\b'</code>

バックスラッシュ文字をエスケープする二重バックスラッシュ (\) に注意してください。 これは、MySQL エンジンによる正しい解釈にとって非常に重要です。

以上がMySQL 検索で単語全体の一致を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。