не работает индекс базы данных sql - PullRequest
0 голосов
/ 28 марта 2012

Я использую базу данных Sql и проиндексировал некоторые таблицы. В некоторых таблицах индекс работал, но в одной из таблиц есть целочисленный столбец, который я обычно использую с предложением order by, я его проиндексировал, но в окне плана выполнения вижу, что он не используется Sql , что бы я ни пытался. кто-нибудь есть идеи, пожалуйста?

Ответы [ 2 ]

1 голос
/ 28 марта 2012

Одним из объяснений является то, что у вас нет ограничения not null для вашего столбца.

Индексы не содержат нулевых ключей, поэтому ваш индекс может содержать не все строки таблицы.Таким образом, движок не может его использовать, потому что он не уверен, что в нем будут все значения, и выполнит сканирование таблицы.

1 голос
/ 28 марта 2012

То, что он не используется, не означает, что он не работает.SQL Server проанализирует ваш запрос и решит, является ли использование индекса хорошей идеей.

Возможно, если вы разместите таблицу и индекс, мы сможем вам помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...