LIKE を使用した MySQL 結合クエリの実行
MySQL で、LIKE 演算子を使用した結合クエリの使用で問題が発生した場合は、次の点を考慮してください。
投稿で提供された元の MySQL 結合クエリ:
SELECT * FROM Table1 INNER JOIN Table2 ON Table1.col LIKE '%' + Table2.col + '%'
残念ながら、このクエリは MySQL では有効ではありません。目的の LIKE 検索を実現するには、次のことを試してください。
SELECT * FROM Table1 INNER JOIN Table2 ON Table1.col LIKE CONCAT('%', Table2.col, '%')
MySQL は、他のデータベースとは異なる方法で文字列連結を処理します。 || を使用する代わりに演算子 (通常、連結に使用されます) を使用する場合は、CONCAT() 関数を使用して、ワイルドカード (%) と列の値を組み合わせます。
この変更により、クエリは MySQL で意図した LIKE 検索を正常に実行できるようになります。各システムで使用される連結演算子が異なるため、アプリケーションを異なるデータベースに移植する場合は、必ずクエリを適宜調整してください。
以上がMySQL JOIN クエリで「LIKE」を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。