why*_*heq 1 sql sql-server indexing performance
所以我在用户表上有这个结构:

但是,如果我运行以下代码:
select count(*)
from WH.dbo.tb_DimUserAccount
Run Code Online (Sandbox Code Playgroud)
它似乎适用于非唯一非聚集索引ix_DimUserAccount_UserType:

这是索引扫描:

为什么不去扫描ix_DimUserAccount_Unique?我应该改变我的代码以某种方式使用不同的索引吗?
因为非聚簇索引可能比聚簇索引更窄,所以扫描比聚簇索引更便宜(读取的页面更少).
NCI叶页只包含索引键和任何包含列的值.聚簇索引叶页需要包含表中所有列的值(或指向值的指针).
因此,聚簇索引(假设相等的填充因子)通常比NCI更少的每行行数(除了NCI包括表中的所有列的情况除外)