SQL Server 2005索引筛选器功能

cod*_*000 2 sql-server indexing indexed-view

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

我想要做的是向列添加索引并使索引忽略空值.

我找不到关于此功能的好信息(可能是我的来源有误).有人可以提供有关此功能的其他信息吗?

Qua*_*noi 9

CREATE INDEX ix_mytable_mycolumn ON mytable(mycolumn) WHERE mycolumn IS NOT NULL
Run Code Online (Sandbox Code Playgroud)

但这只适用于SQL Server 2008.

来自文档:

WHERE <filter_predicate>
Run Code Online (Sandbox Code Playgroud)

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

  • @James:我说哪一年? (4认同)
  • 过滤指数仅在2008年提供. (2认同)

Max*_*erl 7

我想你是在谈论过滤索引,它是在SQL Server 2008而不是2005年引入的.

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

或者只是谷歌搜索"SQL Server过滤索引".