2021-5-25 聚簇索引与 普通索引 以及回表的详细讲解

1.聚簇索引:

聚簇索引:
	1.如果表中有主键pk ,则 pk为聚簇索引
	2.如果没有pk,则选择not null unique index 不为空的
唯一索引为 簇簇索引
	3. 如果以上都没有,则生成一个默认的 row_id 作为聚簇索引
	

什么是聚簇索引

1.聚簇索引是叶子节点存储的行数据,每一个为聚簇索引的值,都包含那个值的行数据

什么是普通索引

create index index_name on 表(字段)
这就是普通索引的创建,
这个索引的叶子节点存放的是 主键 id

回表
回表就是 查询的字段 与where 条件字段不一致,进行回表查询

什么是回表:

例:

select name from student where name = 'libai'

查询字段 name 与 where name 一致 ,不会回表 只会在name的叶子节点存的name,来拿name
name 这个索引叶子节点存放的是 pk
所以也可以按以下查询

select id,name from student where name = 'libai'

什么是索引覆盖

就是以上的 不回表案例

怎样查询索引失效,会回表
例:

select name ,age ,id from student where name = 'libai'

当查询列 不包含在 where 条件字段 时 , 不会索引覆盖,还是会回表

但是

create index name_age student(name,age);

这样联合索引 进行 查询 不会失效 ,剩下的慢慢讲

感觉不错点个赞~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大大陈·

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值