聚簇索引与非聚簇索引的区别
聚簇索引:将数据存储与索引放到了一块,索引结构的叶子节点保存了行数据。
非聚簇索引:将数据与索引分开存储,索引结构的叶子节点指向了数据对应的位置。
非聚簇索引:
在非聚簇索引的叶子节点上存储的并不是真正的行数据,而是主键 ID,所以当我们使用非聚簇索引进行查询时,首先会得到一个主键 ID,然后再使用主键 ID 去聚簇索引上找到真正的行数据,我们把这个过程称之为回表查询。
除去主键索引,还有其它的索引,每个索引都会建立一个B+树,这些B+树是非聚集索引,非聚集索引,非叶子结点存放索引,叶子结点存放表ID
聚簇索引:
innodb通过主键构建一个B+树,该B+树用来存放数据(非叶子结点存放主键,叶子结点存放数据),这是聚簇索引。
上一篇:SQL语句
下一篇:索引失效的问题如何排查?
相关文章
-
索引下推
索引下推的下推其实就是指将部分上层(服务层)负责的事情,交给了下层(引擎层)去处理。
NEW个对象 2024-12-17
-
数据库死锁问题排查过程会遇到哪些问题?
数据库死锁问题排查过程会遇到哪些问题? 1、锁的是那个表 一般会有报警信息,根据报警信息可以获取到sql语句,然后根据sql获取锁的那张表。
NEW个对象 2024-10-24
-
SQL语句
表B:id,name,code,detail四个字段均有值;表A id,name,code,detail其中id,name有值并且与表B相对应,code,detail值为null。现在将B表中的code和detail值更新到A表中。
NEW个对象 2024-12-25