ホームページ >データベース >mysql チュートリアル >MySQL 検索で単語全体の一致を実現するにはどうすればよいですか?
正規表現を使用した 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 サイトの他の関連記事を参照してください。