为什么每张表只能建一个聚集索引
3个回答
推荐于2016-11-27 · 知道合伙人教育行家
关注
展开全部
因为聚焦索引决定了表的物理排列顺序,一个表只能有一个物理排列顺序,所以一个表只能建一个聚集索引。
聚集索引是一种索引,该索引中键值的逻辑顺序决定了表中相应行的物理顺序。
聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,按姓氏排列数据。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字进行组织一样。
聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如,如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。这样有助于提高此类查询的性能。同样,如果对从表中检索的数据进行排序时经常要用到某一列,则可以将该表在该列上聚集(物理排序),避免每次查询该列时都进行排序,从而节省成本。
聚集索引是一种索引,该索引中键值的逻辑顺序决定了表中相应行的物理顺序。
聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,按姓氏排列数据。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字进行组织一样。
聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如,如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。这样有助于提高此类查询的性能。同样,如果对从表中检索的数据进行排序时经常要用到某一列,则可以将该表在该列上聚集(物理排序),避免每次查询该列时都进行排序,从而节省成本。
2013-01-06
展开全部
聚集索引:
该索引中键值的逻辑顺序决定了表中相应行的物理顺序。
如果用新华字典作例子来一个例子的话。
[拼音]就可以看作是聚集索引
例如吖、阿、啊在字典的最前面。
左、作、坐在字典的最后面。
拼音[逻辑顺序]很接近,在字典中页数的位置[物理顺序]也很接近。
非聚集索引:
非聚集索引与聚集索引一样有 B 树结构,但是有两个重大差别:
数据行不按非聚集索引键的顺序排序和存储。
非聚集索引的叶层不包含数据页。
相反,叶节点包含索引行。每个索引行包含非聚集键值以及一个或多个行定位器,
这些行定位器指向有该键值的数据行(如果索引不唯一,则可能是多行)。
如果用新华字典作例子来一个例子的话。
[笔画]就可以看作是非聚集索引
例如化仇仃仅仂这几个字,都是单人旁,笔画数相同的。
笔画[逻辑顺序]很接近,在字典中页数的位置[物理顺序]则在不同的位置上。
看了上面的例子以后, 你想一下。
为什么每张表只能建一个聚集索引
如果一张表, 可以键2个聚集索引的话。
那么 这个 新华字典, 要怎么排版呢?
即按照拼音排序, 又按照部首排序?
该索引中键值的逻辑顺序决定了表中相应行的物理顺序。
如果用新华字典作例子来一个例子的话。
[拼音]就可以看作是聚集索引
例如吖、阿、啊在字典的最前面。
左、作、坐在字典的最后面。
拼音[逻辑顺序]很接近,在字典中页数的位置[物理顺序]也很接近。
非聚集索引:
非聚集索引与聚集索引一样有 B 树结构,但是有两个重大差别:
数据行不按非聚集索引键的顺序排序和存储。
非聚集索引的叶层不包含数据页。
相反,叶节点包含索引行。每个索引行包含非聚集键值以及一个或多个行定位器,
这些行定位器指向有该键值的数据行(如果索引不唯一,则可能是多行)。
如果用新华字典作例子来一个例子的话。
[笔画]就可以看作是非聚集索引
例如化仇仃仅仂这几个字,都是单人旁,笔画数相同的。
笔画[逻辑顺序]很接近,在字典中页数的位置[物理顺序]则在不同的位置上。
看了上面的例子以后, 你想一下。
为什么每张表只能建一个聚集索引
如果一张表, 可以键2个聚集索引的话。
那么 这个 新华字典, 要怎么排版呢?
即按照拼音排序, 又按照部首排序?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为聚焦索引决定了表的物理排列顺序,一个表只能有一个物理排列顺序,所以一个表只能建一个聚集索引。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询