4

sys.dm_db_index_usage_stats DMV 提供有关在 sql server 中针对索引的查找和扫描次数的信息

我有大量包含多列的复合索引。我怀疑这些索引会导致大量维护开销,并且想缩小列数。

有没有一种方法可以找出针对复合索引中单个列的查找和扫描。

4

1 回答 1

3

SQL Server不实现SKIP SCAN,因此对复合索引的查找始终包括索引的最左侧(前导)列。

也就是说,如果您有一个索引 on (col1, col2),则索引搜索可用于搜索col1orcol1 col2,但不能col2单独用于搜索。

如果您搜索所有这些列,您很可能会从使用索引中受益。

您提到的“维护开销”是什么?单列索引和多列索引之间有什么区别?

于 2009-12-23T20:46:41.667 回答