ホームページ >データベース >mysql チュートリアル >LIKE を使用して SQL クエリ内の複数の単語を検索する方法

LIKE を使用して SQL クエリ内の複数の単語を検索する方法

Patricia Arquette
Patricia Arquetteオリジナル
2025-01-15 17:42:48687ブラウズ

How to Search for Multiple Words in an SQL Query Using LIKE?

SQL クエリ: 特定の単語の任意の組み合わせを含む結果を取得します

特定のフィールドに複数の単語が含まれ、結果にはこれらの単語の任意の組み合わせが含まれるテーブルからレコードを選択する SQL クエリが必要だとします。

クエリ:

フィールド Column1 に指定された単語のいずれか (順序に関係なく) が含まれる行を取得するには、次のクエリを使用できます:

<code class="language-sql">SELECT * FROM MyTable
WHERE Column1 LIKE '%word1%'
   OR Column1 LIKE '%word2%'
   OR Column1 LIKE '%word3%'</code>

結果:

このクエリは、以下を含むすべての行を返します:

  • 列 1 には「単語 1」が含まれています。
  • 列 1 には「単語 2」が含まれています。
  • 列 1 には「単語 3」が含まれています。

すべての単語を強制的に表示します:

指定したすべての単語を結果に含める必要がある場合は、クエリを次のように変更してください:

<code class="language-sql">SELECT * FROM MyTable
WHERE Column1 LIKE '%word1%'
  AND Column1 LIKE '%word2%'
  AND Column1 LIKE '%word3%'</code>

これにより、Column1 に 3 つの単語 (「word1」、「word2」、「word3」) がすべて含まれる行が返されます。

パフォーマンスノート:

上記のクエリは単純ですが、大規模なデータ セットの場合は遅くなる可能性があります。パフォーマンスを向上させるには、テキスト フィールド内の検索に最適化された全文検索機能の使用を検討してください。全文検索が正確にどのように実装されるかは、使用している特定のデータベースによって異なります。

以上がLIKE を使用して SQL クエリ内の複数の単語を検索する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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