У меня есть БД с несколькими полями
word_id — INTEGER PRIMARY_KEY
word — TEXT
...
.. и ~ 150k строк.
Поскольку это словарь, я ищу слово с маской 'search_string%'
, используя LIKE.
Он работал очень хорошо, занимая 15 мс, чтобы найти соответствующие строки. Таблица имеет индекс для поля 'word'
.
Недавно я изменил таблицу (некоторые поля этой таблицы, которые выходят за рамки), и что-то случилось - для выполнения запроса требуется 400 мс, поэтому я понимаю, что теперь он не использует индекс.
Прямой запрос с = вместо того, чтобы показывать результат 10 мс.
Кто-нибудь знает, что здесь происходит?