SQL Server中的聚集索引和非聚集索引之间的区别

索引是与实际表或视图相关联的查找表,数据库使用该查找表来改善数据检索性能的计时。在index中, 键存储在结构(B树)中,该结构使SQL Server可以快速有效地查找与键值关联的一行或多行。如果在表上定义了主键和唯一约束,则会自动创建索引。索引有两种类型-

  • 使用主键约束创建聚簇索引表,然后数据库引擎自动创建聚簇索引。在此数据中,根据它们的键和值对它们进行排序或存储在表或视图中。

  • 非聚集索引-使用UNIQUE约束创建表,然后数据库引擎自动创建非聚集索引。非聚集索引包含非聚集索引键值,并且每个键值条目都有一个指向包含键值的数据行的指针。

序号聚集索引非聚集索引

1

基本的 

它在主键上创建 

可以在任何键上创建 

2

      定购 

根据顺序物理存储数据

不会影响订单 

3

索引数 

一个表中只能有一个聚集索引

一个表中可以有任意数量的非聚集索引

4

空间 

不需要额外的空间来存储逻辑结构 

需要额外的空间来存储逻辑结构 

5

性能

数据检索比非簇索引快 

数据更新比聚集索引快