1.select_type

simple :它表示简单的select,没有union和子查询

dependent union:union依赖外层的查询

dependent subquery:subquery依赖外层的查询

2.type

system:表仅有一行,这是const类型的特列,平时不会出现,一般出现在mysql内建系统表中

const :表最多有一个匹配行,const用于比较primary key 或者unique索引。因为只匹配一行数据,所以很快

eq_ref:对于每个来自于前面的表(连接表)的行,只从该表(被连接表)中读取一行。这可能是最好的联接类型,除了const类型。它用在一个索引的所有部分被联接使用并且索引是UNIQUE或PRIMARY KEY"。eq_ref可以用于使用=比较带索引的列。

ref:对于每个来自于前面的表的行组合,所有有匹配索引值的行将从这张表中读取。如果不能满足只去一行的情况,会使用索引,则使用ref。如果使用的键仅仅匹配少量行,该联接类型是不错的。

range:给定范围内的检索,比如in(xx,xxxx) 或者between

index  :该联接类型与ALL相同,除了只有索引树被扫描。这通常比ALL快,因为索引文件通常比数据文件小,一般在使用了覆盖索引优化的情况下使用

all:对于每个来自于先前的表的行组合,进行完整的表扫描。

index_merge:该联接类型表示使用了索引合并优化方法 常见如 :  idx1 = ? or idx2 = ?

key

MYSQL执行计划使用的索引

ref

和前方表连接的字段,const代表是常量值连接

rows

显示MYSQL执行查询的行数,简单且重要,数值越大越不好

extra

Distinct : 一旦MYSQL找到了与行相联合匹配的行,就不再搜索了

Range checked for each: 没有找到理想的索引,因此对于从前面表中来的每一个行组合,MYSQL检查使用哪个索引,并用它来从表中返回行。这是使用索引的最慢的连接之一

Using filesort: 发生了硬盘或内存排序,一般是由order by 或 group by触发的;典型的情况,排序的字段不是驱动表的字段,则会使用临时表将数据都添加进去,最后进行排序,如果数据大则硬盘排序,如果小则内存排序.

Using index:列数据是从仅仅使用了索引中的信息而没有读取实际的行动的表返回的,使用了覆盖索引优化

Using temporary:使用了临时表,通常和filesort一起发生. 典型情况:使用了派生表.

Using where: 数据库服务层从存储引擎提取了数据又进行了一次条件过滤

using index condition: ICP优化,从5.6之后提供.将过滤条件下推到存储引擎层执行,能更好的利用复合索引来过滤数据,减少IO.

Using index for group-by:使用了松散索引扫描

mysql explain ref const_MySQL explain字段解释相关推荐

  1. mysql explain ref const_MySQL EXPLAIN 详解

    一 .介绍 EXPLAIN 命令用于SQL语句的查询执行计划.这条命令的输出结果能够让我们了解MySQL 优化器是如何执行SQL 语句的.这条命令并没有提供任何调整建议,但它能够提供重要的信息帮助你做 ...

  2. mysql explain ref null_MySQL Explain使用详解

    在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有 ...

  3. Explain信息中Extra字段解释

    文章目录 explain 执行计划中 extra 常见内容说明 extra 字段内容 Using filesort Using temporary Using index Using index co ...

  4. 22-08-25 MySQL高级(03)MySQL索引、索引演绎、适合加索引的情况、执行计划Explain各字段解释

    "系统,那如果我没有绑定,没有简化,我原先的人生最大的可能是怎么样的",李长生好奇一问.很快系统给出了答案. "如果宿主是小说主角的话,就活个几章" " ...

  5. Explain字段解释——ref

    本教程中所使用的数据库的建表语句都在"MySQL高阶教程索引"这篇文章中,点击链接直达:索引&建表语句 摘要:本文主要介绍Explain的常见字段--ref Explain ...

  6. Explain字段解释——rows

    本教程中所使用的数据库的建表语句都在"MySQL高阶教程索引"这篇文章中,点击链接直达:索引&建表语句 摘要:本文主要介绍Explain的常见字段--rows Explai ...

  7. Explain字段解释——Extra(重点)

    本教程中所使用的数据库的建表语句都在"MySQL高阶教程索引"这篇文章中,点击链接直达:索引&建表语句 摘要:本文主要介绍Explain的最后一个常见字段--Extra E ...

  8. mysql explain ref列_mysql explain中的列

    参考:<高性能mysql>附录D EXPLAIN MySql将Select查询分为简单和复杂类型,复杂类型分为3大类:简单子查询,所谓的派生表(在派生表的子查询),以及UNION查询. 列 ...

  9. MySQL优化篇:explain性能分析

    文章目录 1.概念 2.explain能干什么 3.使用方式 4.准备工作 5.各字段解释 5.1.id 5.2.select_type 5.3.table 5.4.type 5.5.possible ...

最新文章

  1. 【原创】如何在 Linux 下调整可打开文件/文件描述符数目
  2. 解决Android中No resource found that matches android:TextAppearance.Material.Widget.Button.Inverse问题
  3. decimalformat精度丢失_笔记一:DecimalFormat BigDecimal
  4. Oracle 分析函数--Row_Number()
  5. 离线数据同步神器:DataX,支持几乎所有异构数据源的离线同步到MaxCompute
  6. 机器学习相关的数学资料下载
  7. android应用启动次数,应用统计: APP启动次数,软件用时统计,用量提醒
  8. Intellij Idea 多模块Maven工程中模块之间无法相互引用问题
  9. 基金大跌,基民上闲鱼“卖货回血”了!支付宝深夜发文!真的没人买基了?...
  10. ArcEngine二次开发_01(鼠标左击右击地图响应不同事件)
  11. Python学习 5day__基础知识
  12. 博途wincc 与 sql 连接操作(博途V14 wincc advanced)
  13. 全国各省市固定资本形成额数据 (1990-2018年)
  14. 2020身高体重标准表儿童_2020年最新身高体重对照表来啦!快来看看您的娃达标没...
  15. 每天学一点设计模式-工厂方法模式
  16. 王者荣耀英雄选中界面html5制作
  17. 论文阅读笔记五十:CornerNet: Detecting Objects as Paired Keypoints(ECCV2018)
  18. hadoop -appendToFlie unknown command
  19. [小说连载]张小庆,在路上(14)- 妈妈来北京打工
  20. 边缘发光材质unity_Unity Shader Graph 小功能实现(一)边缘发光

热门文章

  1. 王伦便起身把盏 加密软件
  2. 【IOS游戏开发】之IPA破解原理
  3. 用std::string::compare()用法
  4. speedoffice使用方法-word如何添加批注
  5. Python——通过用户cookies访问微博首页
  6. 打开计算机窗口抖动是什么原因,电脑显示器屏幕抖动的原因有哪些
  7. 国际物流行业该如何寻找客户
  8. 多线程爬取王者荣耀皮肤壁纸
  9. 942518-29-8,S)-2-Amino-4-azido-butanoic acid HCl,L-Azidohomoalanine (AHA),L-叠氮高苏氨酸(AHA)是蛋氨酸的氨基酸类似物
  10. 如何搭建NFS--网络文件系统