索引下推,索引覆盖,合并索引
一、索引下推
在age、sex列上建立联合索引
1.5.6之前没有索引下推,过程如下
存储引擎根据where条件中age索引字段,找到符合条件行主键ID
然后二次回表查询,根据主键ID去主键索引上找到整行记录
把数据返回给MySQL Server层,再根据where中sex条件,筛选出符合要求的一行记录
2.引入索引下推
存储引擎根据where条件中age索引字段,找到符合条件的行记录,再用sex条件筛选出符合条件主键ID
然后二次回表查询,根据主键ID去主键索引上找到该整行记录
二、回表,索引合并
回表查询,先定位主键值,再定位行记录,它的性能较扫一遍索引树更低
只需要在一棵索引树上就能获取SQL所需的所有列数据,无需回表,速度更快
三、合并索引
select *from tbl where index = 1 and index 2
根据index1和index2 两个索引去过滤,把交集的共有id拿去回表

浙公网安备 33010602011771号