同时拥有非群集和聚簇索引的好处

时间:2014-07-23 09:30:17

标签: tsql indexing

假设我们的表A包含列col1,col2和col3。我们在col2上有非聚集索引(3级)。 当您使用非聚集索引进行搜索并希望返回col3的值时,它会从索引读取3页,然后通过引用移动到数据库并读取另外一页。

现在让我们假设我们在col1上也有聚集索引。然后对于相同的搜索,它将从非聚集索引读取3页,然后在聚簇索引中进行关键查找(至少另外3页)。

因此,聚集索引会增加成本。我是对的吗?

1 个答案:

答案 0 :(得分:0)

是。我指的是这种(经常被忽略的)现象作为"聚集索引惩罚"。

这是我写的一篇文章,其中还有一些基准:http://use-the-index-luke.com/blog/2014-01/unreasonable-defaults-primary-key-clustering-key