MySQL⾯试题——聚簇索引和⾮聚簇索引postman开源
1.聚簇索引和⾮聚簇索引的概念
mysql面试题sql1.1聚簇索引
将数据存储与索引放到了⼀块,到了索引也就到了数据,当表有聚簇索引时,它的数据实际上存放在索引的叶⼦页上,也就是B+树的叶⼦节点上,因为数据⾏不能存在两个地⽅,所以⼀个表只能有⼀个聚簇索引,在InnoDB中通过主键聚集数据,如果没有定义主
键,InnoDB会选择⼀个唯⼀的⾮空索引代替。如果没有这样的索引,InnoDB会隐式定义⼀个主键来作为聚簇索引
1.2⾮聚簇索引
将数据存储与索引分开,索引结构的叶⼦节点指向了数据的对应⾏,在⾮聚簇索引中,索引中的逻辑顺序并不等同于表中⾏的物理顺序,索引是指向表中⾏的位置的指针,这些指针本⾝是有序的,通过这些指针可以在表中快速定位
1.3补充
聚簇索引和⾮聚簇索引的根本区别是数据记录的排列顺序和索引顺序是否⼀致,聚簇索引表记录的排列顺序与索引的排列顺序⼀致,优点是查询速度快,缺点是对表进⾏修改速度⽐较慢,这是为了保持表中的记录的物理顺序与索引的顺序⼀致
⾮聚簇索引指定了表中记录的逻辑顺序,数据记录的物理顺序和索引的顺序不⼀致,聚集索引和⾮聚集索引都采⽤了B树的结构,但⾮聚簇索引的叶⼦层顺序与实际的数据叶并不相同。在对聚簇索引查询时,聚簇索引的速度⼀般要⽐⾮聚簇索引快。
建个人网站要花多少钱1.4何时使⽤聚簇索引和⾮聚簇索引
静态页面怎么做当我们经常对表中的记录进⾏修改操作时,应该使⽤⾮聚簇索引,聚簇索引适⽤于列经常被分组排序、表中记录⽐较少、需要返回某范围内的数据
php阶乘递归2.关于⾮聚簇索引和聚簇索引回表查询
2.1⾮聚簇索引⼀定会回表查询吗
grpc 教程不⼀定,当查询语句所要求的字段全部命中了索引,就不⽤再回表查询了
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论