Функция индексного фильтра SQL Server 2005
-
21-09-2019 - |
Вопрос
Мне сказали, что в SQL Server 2005 появилась новая функция, называемая индексными фильтрами.
Я хочу добавить индекс в столбец и заставить его игнорировать нулевые значения.
Я не могу найти хорошую информацию об этой функции (возможно, мой источник неправильный).Может ли кто-нибудь предоставить дополнительную информацию об этой функции?
Решение
CREATE INDEX ix_mytable_mycolumn ON mytable(mycolumn) WHERE mycolumn IS NOT NULL
Это будет работать только в SQL Server 2008
, хотя.
От документы:
WHERE <filter_predicate>
Создает отфильтрованный индекс, указывая, какие строки включать в индекс.Отфильтрованный индекс должен быть некластеризованным индексом таблицы.Создает отфильтрованную статистику для строк данных в отфильтрованном индексе.
Другие советы
Я думаю, вы говорите о фильтрованных индексах, которые были представлены в SQL Server 2008, а не в 2005 году.
Для получения информации ознакомьтесь с этой статьей: http://www.sql-server- Performance.com/articles/dba/Filtered_Indexes_in_SQL_Server_2008_p1.aspx
Или просто выполните поиск в Google по запросу «индексы, отфильтрованные сервером SQL».