これは、厄介な厄介なunsargableslow
を使用したJOIN操作です。 ON
状態。
SELECT B.description
FROM A
JOIN B ON B.description LIKE CONCAT('%', A.code, '%')
'needle' LIKE '%haystack%'
なので、時間がかかります つまり、MySQLは、針を見つけるために干し草の山の中のすべてを調べる必要があります。
一方、'needle' LIKE 'haystack%'
(先頭の%
なし )できます インデックスを使用します。したがって、これがデータで機能する場合は、それを使用する必要があります。
SELECT B.description
FROM A
JOIN B ON B.description LIKE CONCAT('FAX', A.code, '%')