mssql sqlserver 聚集索引、非聚集索引区分


摘要:
下文讲述聚集索引和非聚集索引的区别,如下所示:



聚集索引、非聚集索引区分:

聚集索引、非聚集索引:
聚集索引和非聚集索引的区别为:物理表的数据存放是否同索引的存放顺序来判断;
聚集索引:物理表按照索引排序存放
非聚集索引:物理表不按照索引的顺序存放
聚集索引:物理表只允许存在一个聚集索引
非聚集索引:物理表可允许存在多个非聚集索引

聚集索引、非聚集索引优缺点:

聚集索引:在特定的情况下 “检索数据的速度比非聚集索引快”(因为物理表上的数据按照索引顺序存放)
聚集索引:数据插入时比非聚集索引慢


聚集索引、非聚集索引应用场景:

说明

聚集索引

非聚集索引
列数据分组排序

两者无差异
返回指定范围数据

使用

频繁更新列

使用
外键列 主键列

两者无差异
索引列频繁修改

使用
索引列不同值非常多

使用
索引列相同值非常多

使用