SQL SELECT WHEREフィールドに単語が含まれている 質問する

SQL SELECT WHEREフィールドに単語が含まれている 質問する

次のような結果を返す選択が必要です:

SELECT * FROM MyTable WHERE Column1 CONTAINS 'word1 word2 word3'

そして、すべての結果が必要です。つまり、これには「word2 word3 word1」または「word1 word3 word2」の文字列、またはこれら 3 つの他の組み合わせが含まれます。

すべての単語が結果に含まれている必要があります。

ベストアンサー1

かなり遅いですが、いずれかの単語を含めるための有効な方法です:

SELECT * FROM mytable
WHERE column1 LIKE '%word1%'
   OR column1 LIKE '%word2%'
   OR column1 LIKE '%word3%'

すべての単語を表示する必要がある場合は、次のようにします。

SELECT * FROM mytable
WHERE column1 LIKE '%word1%'
  AND column1 LIKE '%word2%'
  AND column1 LIKE '%word3%'

もっと高速なものが必要な場合は、全文検索を検討する必要がありますが、これはデータベースの種類ごとに非常に固有です。

おすすめ記事