你的位置:首页 > 软件开发 > 数据库 > 索引深入浅出:非唯一列上的非聚集索引

索引深入浅出:非唯一列上的非聚集索引

发布时间:2015-05-15 22:00:18
在索引深入浅出:非聚集索引的B树结构在聚集表里,我们讨论了非聚集索引。我们提到,唯一非聚集索引可以让所讨论的问题变得简单很多。我们已经知道了非聚集索引的通用结构,现在我们来看下在非唯一列上的非聚集索引的存储结构。在索引深入浅出:选择正确并合适的聚集索引键里,我们讨论了在非唯一列上 ...

索引深入浅出:非唯一列上的非聚集索引

在索引深入浅出:非聚集索引的B树结构在聚集表里,我们讨论了非聚集索引。我们提到,唯一非聚集索引可以让所讨论的问题变得简单很多。我们已经知道了非聚集索引的通用结构,现在我们来看下在非唯一列上的非聚集索引的存储结构。

在索引深入浅出:选择正确并合适的聚集索引键里,我们讨论了在非唯一列上如何管理聚集键。我们知道SQL Server会给所有发生重复的聚集键增加4 bytes的值。同样,非聚集索引在B树的所有层增加聚集键,让在下一层的记录标识唯一。至于聚集索引,uniquifier 只在重复时增加。对于非聚集索引,如果创建索引不唯一时,聚集键会在所有记录增加。如果非聚集索引是以唯一定义的,SQL Server只在叶子层增加聚集键,用做书签查找(bookmark lookup)操作。

我们来看一个例子。

1 SELECT * INTO dbo.SalesOrderDetail FROM AdventureWorks2008r2.Sales.SalesOrderDetail2 GO3 CREATE UNIQUE CLUSTERED INDEX ix_SalesOrderDetail ON dbo.SalesOrderDetail(SalesOrderDetailID)4 GO5 CREATE INDEX Ix_ProductId ON SalesOrderDetail(ProductId,Salesorderid)

原标题:索引深入浅出:非唯一列上的非聚集索引

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录