技术主题
聚簇索引是一种数据的存储方式,它的数据行只存放在索引(B+树)的叶子上,内部节点不存放数据。
聚簇索引
聚簇索引默认是主键,如果没有定义主键,innodb会选择一个唯一的非空索引代替。如果没有这种索引,innodb会隐式定义一个主键作为聚簇索引。
非聚簇索引
非聚簇索引就是指B+树的叶子节点上的data,并不是数据本身,而是数据存放的地址,主索引和辅助索引没啥区别,只是主索引中的key一定得是唯一的。主要是用在MyISAM存储引擎中。
聚簇索引和非聚簇索引的对比
对比发现
InnoDB使用的是聚簇索引,将主键组织到一棵B+树中,而行数据就储存在叶子节点上,若使用"where id = 14" 这样的条件查找主键,则按照B+树的检索算法即可查找到对应的叶节点,之后获得行数据。文章来源:https://www.toymoban.com/news/detail-477152.html
回表的概念:若对Name列进行条件搜索,则需要两个步骤:第一步在辅助索引B+树中检索Na文章来源地址https://www.toymoban.com/news/detail-477152.html
到了这里,关于谈谈聚簇索引与非聚簇索引的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!