У меня есть небольшая таблица с примерно 1 миллионом строк, и я выполняю следующий запрос к ней.
SELECT *
FROM TillBasicData
WHERE companyid = 'BE_AA'
AND languagecode = 'eng'
AND noos14 LIKE '%09258384374953%';
--09258384374953,09258387354952
Проблема в том, что выполнение занимает около 1 минуты.
Я добавил следующий индекс, чтобы попытаться ускорить процесс
CREATE INDEX IX_TillBasicData
ON dbo.tillbasicdata (companyid DESC, languagecode DESC, noos14 DESC);
Это немного помогает и сокращает его до 30 секунд, но я до сих пор не понимаю, почему это занимает так много времени, я могу только предположить,это связано с оператором LIKE, но что я могу сделать, чтобы ускорить процесс?
В такой маленькой таблице я бы предположил, что запрос будет выполнен менее чем за 1 секунду.