微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql-server – 这句话是什么意思:集群索引物理存储在表上?

集群索引如何存储在硬盘上?什么是逻辑顺序?

非聚簇索引如何工作?

解决方法

这意味着根据CLUSTERED PRIMARY KEY(或聚类列)的顺序将表中的数据存储在B-Tree中.

这个名字在我看来有点混乱. Oracle中相同的概念称为索引组织表,我发现更多的描述性.

非聚集索引包含索引列的值以及指向它们所创建的记录的指针.

“聚集索引”是表本身; “非聚集”索引是某些表的列的有序副本.

如果您“创建”聚簇索引,则表重新排列.这就是为什么你不能在表上有多个“聚集索引”:表不能按照多个顺序排列.

如果创建辅助索引,则创建表的卷影副本,保留索引列的值以及指向它们的记录的指针.每当表改变时,副本也被更改(引擎自动处理).

非集群表

id   col1   value
--   --     --
1    1      Data 1
6    1      Data 6
3    1      Data 3
7    2      Data 7
9    2      Data 9
5    2      Data 5

表没有订购.

集群表

id   col1   value
--   --     --
1    1      Data 1
3    1      Data 3
5    2      Data 5
6    1      Data 6
7    2      Data 7
9    2      Data 9

该表是按照id排序的.

具有辅助索引的聚集表

Table                      Index
id   col1   value          col1   id
--   --     --             --     --
1    1      Data 1         1      1
3    1      Data 3         1      3
5    2      Data 5         1      6
6    1      Data 6         2      5
7    2      Data 7         2      7
9    2      Data 9         2      9

该表是在id上的orderer,索引是按顺序(col1,id)

原文地址:https://www.jb51.cc/mssql/82121.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐