私はこのような単語の配列を持っています:
$word1 = array('test1','test2','test3','test4','test5',...,'test20');
列にこれらの単語が少なくとも 1 つ含まれているすべての行をテーブルで検索する必要がありtext
ます。これまでのところ、次のSQLクエリがあります。
SELECT * FROM TABLE WHERE text LIKE '$word1[0]' OR text LIKE '$word1[1]'
OR ... OR text LIKE '$word1[20]'
しかし、この設計はあまり効率的ではありません。where句のすべての単語を書き出す必要がないように、このクエリを短縮する方法はありますか?
例SELECT * FROM TABLE WHERE text IN ($word1)
PS: これは私が探しているものの例であり、実行できる実際のクエリではありません。