SELECT
*
FROM
pages
INNER JOIN cms_collection ON cms_collection.collection_id LIKE
(
CONCAT('%', pages.page_id, '/heading%') OR
CONCAT('%', pages.page_id, '/content%')
)
WHERE
site_id = 51
LIMIT 10
スタックされた CONCAT が原因でクエリが非常に遅くなりますが、これを最適化する方法はありますか? そして、実際には、このステートメントは期待どおりに機能していないようです.. collection_id が「%pages.page_id/heading%」または「%pages.page_id/content%」であるかどうかに基づいて、LIKE を実行したいと考えています。
最初の CONCAT だけが存在する場合、このステートメントは正常に機能します。