专栏首页ShyNodes覆盖索引,联合索引,索引下推
原创

覆盖索引,联合索引,索引下推

覆盖索引:

如果查询条件使用的是普通索引(或是联合索引的最左原则字段),查询结果是联合索引的字段或是主键,不用回表操作,直接返回结果,减少IO磁盘读写读取正行数据

最左前缀:

联合索引的最左 N 个字段,也可以是字符串索引的最左 M 个字符

联合索引:

根据创建联合索引的顺序,以最左原则进行where检索,比如(age,name)以age=1 或 age= 1 and name=‘张三’可以使用索引,单以name=‘张三’ 不会使用索引,考虑到存储空间的问题,还请根据业务需求,将查找频繁的数据进行靠左创建索引。

索引下推:

like 'hello%’and age >10 检索,MySQL5.6版本之前,会对匹配的数据进行回表查询。5.6版本后,在engine层会先过滤掉age<10的数据,再进行回表查询,减少回表率,提升检索速度

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 「Mysql索引原理(七)」覆盖索引

    通常大家都会根据查询的WHERE条件来创建合适的索引,不过这只是索引优化的一个方面。设计优秀的索引应该考虑到整个查询,而不单单是WHERE条件部分...

    源码之路
  • 【索引潜规则】-覆盖索引、ICP、MRR详解

    上篇文章我们说了创建索引的方法,有聚簇索引、辅助索引、前缀索引、联合索引等,也说了如何利用索引的排序功能,接着本篇文章主要来说一说索引的几种优化策略,首先我们先...

    MySQL数据库技术栈
  • MongoDB 覆盖索引查询

    由于所有出现在查询中的字段是索引的一部分, MongoDB 无需在整个数据文档中检索匹配查询条件和返回使用相同索引的查询结果。

    用户4988376
  • 二十四、覆盖索引

    覆盖索引又称为索引覆盖,即 select 的数据列只从索引中就能得到,不必读取数据行,也就是只需扫描索引就可以得到查询结果。

    喵叔
  • MySQL 覆盖索引与延迟关联

    本期来谈谈覆盖索引与延迟关联。在此之前,我们先简单建立一个订单表 Orders 用于举例说明。表中共包含 3 个字段:

    江不知
  • 深入理解四种数据库索引类型(- 唯一索引/非唯一索引 - 主键索引(主索引) - 聚集索引/非聚集索引 - 组合索引)唯一索引/非唯一索引主键索引(主索引)聚集索引/非聚集索引5.组合索引(联合索引)

    1.唯一索引是在表上一个或者多个字段组合建立的索引,这个或者这些字段的值组合起来在表中不可以重复。

    desperate633
  • mysql优化:覆盖索引(延迟关联)

    上周新系统改版上线,上线第二天就出现了较多的线上慢sql查询,紧接着dba 给出了定位及解决方案,这里较多的是使用延迟关联去优化。 而我对于这个延迟关联也是...

    一枝花算不算浪漫
  • 第26期:索引设计(索引下推)

    索引下推(INDEX CONDITION PUSHDOWN,简称 ICP)是 MySQL 5.6 发布后针对扫描二级索引的一项优化改进。总的来说是通过把索引过滤...

    爱可生开源社区
  • 索引之单列索引和组合索引

    若有组合索引(a,b,c),那么根据最左前缀,数据库成立了三个索引(a)(a,b)(a,b,c),

    ydymz
  • MySQL SQL优化之覆盖索引

    内容概要 利用主索引提升SQL的查询效率是我们经常使用的一个技巧,但是有些时候MySQL给出的执行计划却完全出乎我们的意料,我们预想MySQL会通过索引扫描完成...

    数据和云
  • [MySQL] mysql索引的长度计算和联合索引

    1.所有的索引字段,如果没有设置not null,则需要加一个字节。 2.定长字段,int占4个字节、date占3个字节、char(n)占n个字符。 3.变长字...

    陶士涵
  • 进阶-联合索引

    技能锦囊
  • 进阶-联合索引

    如果遇到了范围查询,比如(<)(>)和 between 等, 会停止匹配,那后面的列就不会用到联合索引了。

    技能锦囊
  • Mysql性能优化案例 - 覆盖索引

    场景 产品中有一张图片表,数据量将近100万条,有一条相关的查询语句,由于执行频次较高,想针对此语句进行优化 表结构很简单,主要字段: user_id 用...

    dys
  • Mysql资料 索引--索引优化(下)

    陈不成i
  • mysql联合索引详解

    上一篇文章:mysql数据库索引优化 比较简单的是单列索引(b+tree)。遇到多条件查询时,不可避免会使用到多列索引。联合索引又叫复合索引。 b+tree结构...

    企鹅号小编
  • mysql复合索引、普通索引总结

    对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分。例如索引是key index (a,b,c). 可以支...

    居士
  • Mysql合理建立索引,索引优化

    在我们日常使用数据库的时候,肯定避免不了对数据库的优化。那么对数据库的优化又少了不索引的知识。

    宣言言言
  • 聚合索引(clustered index) / 非聚合索引(nonclustered index)

    以下我面试经常问的2道题..尤其针对觉得自己SQL SERVER 还不错的同志.. 呵呵 很难有人答得好.. 各位在我收集每个人擅长的东西时,大部分都把SQL...

    欢醉

扫码关注云+社区

领取腾讯云代金券