Поиск строки по точному слову в Mysql

У меня есть система, которая ищет компанию. Я хочу, чтобы, когда пользователь ищет «Демо», будут возвращены все записи с «Демо», например «Демо», «Демо Инк.» И т. Д. Мне не нужны такие записи, как «Демократическая», « Снос "и т. Д. Я думаю, вы поняли мою точку зрения.

Прямо сейчас мой рабочий запрос выглядит примерно так:

select * from table where company LIKE "Demo%"

Но это действительно не соответствует моему требованию. Я также попробовал это:

select * from table where company RLIKE "[[:<:]]demo[[:>:]]"

Единственная проблема в том, что это исключает возможность индексации на поле моей компании. Так что поиск действительно медленный. У меня сейчас более миллиона записей. Есть идеи как это сделать? Если это не может быть сделано в MySQL, есть идеи, если это возможно в PHP? Спасибо!

Ответы на вопрос(8)

Ваш ответ на вопрос