Медленный поиск по запросу индекса LIKE% MYSQL
у меня есть таблица с 100 000 000 строк, таких больших. Структура таблицы
id int INDEX(not primary not unique just index)
lang_index varchar(5) INDEX
name varchar(255) INDEX
enam varchar(255) INDEX
Хорошо. я делаю запрос
1 запрос
"SELECT name FROM table WHERE lang_index='en' AND name LIKE 'myname%'"
Скорость в порядке для этого большого стола. около 0,02 сек.
я попробую 2 запроса
"SELECT name FROM table WHERE lang_index='en' AND (name LIKE 'myname%' OR enam LIKE 'myname%')"
Очень очень медленно около 230 сек !!!
тогда я попробую это 3 запроса
"SELECT name FROM table WHERE lang_index='en' AND enam LIKE 'myname%'"
Скорость фантастическая. около 0,02 сек.
Затем я взрываю мой второй запрос для двух запросов (1 и 3 запроса), это быстрее. около 0,04 сек но это не просто.
Почему мой запрос медленный? Два запроса намного быстрее, чем один.
Мне нужно сделать это"SELECT name FROM table WHERE lang_index='en' AND (name LIKE 'myname%' OR enam LIKE 'myname%')"
Как я могу сделать это быстрее?