улучшить производительность для предложения LIKE
Это было болью в моей голове в течение последних нескольких дней. Я создал базу данных раньше без каких-либо знаний о производительностиLIKE
, Запрос, который я использовал, выглядит так:
SELECT ....
FROM .... JOINS ....
WHERE tableA.col1 LIKE '%keyword%' OR
tableB.col2 LIKE '%keyword%' OR
tableC.col2 LIKE '%keyword%' OR
.....
Когда я тестировал запрос, он был очень быстрым, потому что там было всего около 100-150 записей. Я хотел найти любую строку, которая содержит ключевое слово. По прошествии нескольких месяцев база данных выросла до 50 000 записей. И на этот раз я уже испытываю низкую производительность запроса. Это было чрезвычайно низко.
Любые предложения, как я могу улучшить это? Я могу'изменить базу данных, потому что она уже используется корпорацией.
Кстати, мои столы были все.INNODB