2

有人告诉我,SQL Server 2005 中有一个新功能,称为索引过滤器。

我想要做的是将索引添加到列并让索引忽略空值。

我找不到有关此功能的好信息(也许我的来源是错误的)。谁能提供有关此功能的其他信息?

4

2 回答 2

9
CREATE INDEX ix_mytable_mycolumn ON mytable(mycolumn) WHERE mycolumn IS NOT NULL

不过,这仅适用于SQL Server 2008.

文档

WHERE <filter_predicate>

通过指定要包含在索引中的行来创建过滤索引。过滤索引必须是表上的非聚集索引。为过滤索引中的数据行创建过滤统计信息。

于 2009-10-13T13:49:34.530 回答
7

我想你说的是过滤索引,它是在 SQL Server 2008 中引入的,而不是 2005 年。

有关信息,请查看这篇文章:http ://www.sql-server-performance.com/articles/dba/Filtered_Indexes_in_SQL_Server_2008_p1.aspx

或者只是在谷歌搜索“sql server 过滤索引”。

于 2009-10-13T13:44:14.010 回答