Ако вашият индекс не се използва, това обикновено означава един от двата проблема:
-
Предикатни условия без възможност за добавяне, като например
WHERE DATEPART(YY, Column) = <something>
. Обвиването на колони във функция ще наруши или елиминира способността на оптимизатора да използва ефективно индекс. -
Непокрити колони в изходния списък, което е много вероятно, ако имате навика да пишете
SELECT *
вместоSELECT specific_columns
. Ако индексът не покрива вашата заявка, тогава SQL Server трябва да извърши търсене на RID/ключ за всеки ред, един по един, което може да забави заявката толкова много, че оптимизаторът просто да реши да направи сканиране на таблица вместо това.
Вижте дали едно от тези може да се отнася за вашата ситуация; ако все още сте объркани, бих препоръчал да актуализирате въпроса с повече информация за вашата схема, данните и заявките, които са бавни. 500 MB са много малко за SQL база данни, така че това не трябва да е бавно. Също така публикувайте какво има в плана за изпълнение.