【Mysql】索引下推 您所在的位置:网站首页 索引下推 【Mysql】索引下推

【Mysql】索引下推

#【Mysql】索引下推| 来源: 网络整理| 查看: 265

【Mysql】索引下推 索引下推

当 sql满足最左前缀原则的时候,最左前缀可以用于在索引中定位记录,而索引下推就是用来优化那些不符合最左前缀的部分

例如有一联合索引(name,age),索引结构如下:

现有一需求,sql为:

select * from tuser where name like '张%' and age=10;

根据最左前缀原则,这里只有

name可以用索引,可以定位到 ID3,在Mysql 5.6 版本之前,只能从 ID3开始一个一个回表,到主键索引找到数据行,再对比字段值

在Mysql 5.6 版本引入了索引下推这个优化,再索引遍历过程中,对索引中包含的字段先做判断,直接过滤掉不满足条件的记录,减少回表次数,如图:

无索引下推执行流程: 从ID3开始回表了4次

索引下推执行流程: 首先判断将

age 不等于10 的直接跳过,只需要对 ID4 和 ID5 这两条记录回表取数据判断,只需要回表2次

msyqloraclemongodbpostgresql


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有