关于聚集索引和非聚集索引
2010-10-26 17:39
225 查看
索引是数据表中一列或者多列的排序结构,采用B+树结构存储,会占用磁盘空间,在创建或者修改索引的时候会增加系统开销,索引不要建立在频繁修改的列上,这样会增加search,update,delete的速度,否则会增加Update的开销。
如果建立的频繁修改的列上会导致行移列,增到开销
分为2类,聚集索引和非聚集索引,
聚集索引一个表只可以有唯一的一个,表中的物理排序结构和索引键值(索引)相同,
聚集索引不适合创建的列
1.频繁修改的列,
这样会导致这行移列,加大系统开销
2.宽列
就是多个列的查询,因为非聚集索引会把聚集索引的键值当做自己的查询键,这样会导致这个表中任何一个非聚集索引都
变大,因为非聚集索引不但包括自己定义的索引还包括聚集索引的键值。
建议使用情况
a,此列包含有限数目的不同值,
b,查询结果返回一个区间的值,
c,查询结果返回大量的结果集。
聚集索引在一个表中最多可以建255个,表中物理结构顺序和索引值不相同,而是通过指针关联,这样在添加索引的时候
不会移动列,因为它只是一个指针,
建议使用情况
a.此列包含了大量数目不同的值,
b,查询结果返回少量的数据集。
c,order by中使用了该列
如果建立的频繁修改的列上会导致行移列,增到开销
分为2类,聚集索引和非聚集索引,
聚集索引一个表只可以有唯一的一个,表中的物理排序结构和索引键值(索引)相同,
聚集索引不适合创建的列
1.频繁修改的列,
这样会导致这行移列,加大系统开销
2.宽列
就是多个列的查询,因为非聚集索引会把聚集索引的键值当做自己的查询键,这样会导致这个表中任何一个非聚集索引都
变大,因为非聚集索引不但包括自己定义的索引还包括聚集索引的键值。
建议使用情况
a,此列包含有限数目的不同值,
b,查询结果返回一个区间的值,
c,查询结果返回大量的结果集。
聚集索引在一个表中最多可以建255个,表中物理结构顺序和索引值不相同,而是通过指针关联,这样在添加索引的时候
不会移动列,因为它只是一个指针,
建议使用情况
a.此列包含了大量数目不同的值,
b,查询结果返回少量的数据集。
c,order by中使用了该列
相关文章推荐
- 关于SQL 数据库表中的聚集索引和非聚集索引等
- 关于SQL 数据库表中的聚集索引和非聚集索引等
- 数据库:关于聚集索引和非聚集索引(整理)
- 关于聚集索引和非聚集索引
- SQL Server的聚集索引和非聚集索引
- MySQL的聚集索引和非聚集索引
- 聚集索引和非聚集索引的区别?
- 索引键的唯一性(4/4):非唯一聚集索引上的唯一和非唯一非聚集索引
- SQL Server中的联合主键、聚集索引、非聚集索引
- 聚集索引和非聚集索引(整理) --转
- 关于聚集索引的一些总结
- 聚集索引和非聚集索引的区别理解
- 聚集索引和非聚集索引的区别
- 聚集索引和非聚集索引(整理)
- SQL Server的聚集索引和非聚集索引
- 聚集索引和非聚集索引的区别
- 聚集索引和非聚集索引
- 聚集索引和非聚集索引的区别
- 聚集索引和非聚集索引
- 聚集索引和非聚集索引