explain各个属性含义

各属性含义:

id: 查询的序列号

select_type: 查询的类型,主要是区别普通查询和联合查询、子查询之类的复杂查询

  • SIMPLE:查询中不包含子查询或者UNION
  • 查询中若包含任何复杂的子部分,最外层查询则被标记为:PRIMARY
  • 在SELECT或WHERE列表中包含了子查询,该子查询被标记为:SUBQUERY

table: 输出的行所引用的表

type: 访问类型

从左至右,性能由差到好

  1. ALL: 扫描全表
  2. index: 扫描全部索引树
  3. range: 扫描部分索引,索引范围扫描,对索引的扫描开始于某一点,返回匹配值域的行,常见于between、<、>等的查询
  4. ref: 使用非唯一索引或非唯一索引前缀进行的查找

(eq_ref和const的区别:)

  1. eq_ref:唯一性索引扫描,对于每个索引键,表中只有一条记录与之匹配。常见于主键或唯一索引扫描
  2. const, system: 单表中最多有一个匹配行,查询起来非常迅速,例如根据主键或唯一索引查询。system是const类型的特例,当查询的表只有一行的情况下, 使用system。
  3. NULL: 不用访问表或者索引,直接就能得到结果,如select 1 from test where 1

possible_keys: 表示查询时可能使用的索引。如果是空的,没有相关的索引。这时要提高性能,可通过检验WHERE子句,看是否引用某些字段,或者检查字段不是适合索引

key: 显示MySQL实际决定使用的索引。如果没有索引被选择,是NULL

key_len: 使用到索引字段的长度

注:key_len显示的值为索引字段的最大可能长度,并非实际使用长度,即key_len是根据表定义计算而得,不是通过表内检索出的。

ref: 显示哪个字段或常数与key一起被使用

rows: 这个数表示mysql要遍历多少数据才能找到,表示MySQL根据表统计信息及索引选用情况,估算的找到所需的记录所需要读取的行数,在innodb上可能是不准确的

Extra: 执行情况的说明和描述。包含不适合在其他列中显示但十分重要的额外信息。

    1. Using index:表示使用索引,如果只有 Using index,说明他没有查询到数据表,只用索引表就完成了这个查询,这个叫覆盖索引。
    2. Using where:表示条件查询,如果不读取表的所有数据,或不是仅仅通过索引就可以获取所有需要的数据,则会出现 Using where。

原文地址:https://www.cnblogs.com/kevinleerunqing/p/12034317.html

时间: 2024-10-25 03:22:37

explain各个属性含义的相关文章

RFC3489 STUN之客户端所处环境探测流程与部分属性含义说明

1 STUN客户端所处环境探测流程 1.1 流程图 1.2 流程图中Binding请求类型说明 类型1:Binding请求消息中不设置CHANGE-REQUEST,或若设置其相应更改IP与端口标志位都清零 类型2:Binding请求消息中设置CHANGE-REQUEST,并且其相应更改IP与端口标志位都置位 类型3:Binding请求消息中设置CHANGE-REQUEST,并且仅更改端口标志位置位 2 部分属性含义说明 2.1 CHANGE-REQUEST 前提:STUN服务器按协议要求一般会使

java:Hibernate框架(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态)

1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件  准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cfg.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configurati

[转] .NET 3.5中MSChart组件的ImageLocation属性含义

在.NET程序/网站中如果要生成统计图表/图形,以前可以采用OWC(Office Web Components),如OfficeXP组件OWC10.Office2003组件OWC11.OWC采用COM-DLL方式的调用接口,但主要缺憾 是生成的图片不够美观,不够“现代”. 现在,随着.NET 3.5的发布,其引入了新的MSChart组件,当然,已经彻底的.NET化了. 一.要使用这个新的图形组件,需要.NET 3.5 SP1环境.下载安装以下文件,分别是组件安装包.中文语言包.VS插件.MSCh

angularjs的directive的属性含义详解

在介绍directive之前,我想先讲讲MVC这个框架的相关知识.这样可以更好的理解angular. 什么是MVC?mvc是一种设计模式,它把应用划分为三个部分,数据(模型),展现层(视图),控制交互层(控制器),一个时间的发生时这样的过程: 1.用户和应用产生交互 2.控制器的事件处理器被触发 3.控制器从模型中请求数据,并将其交给视图 4.视图将数据呈现给用户. 模型 模型用来存放应用的所有数据对象,模型不必知晓视图和控制器的细节,模型只需包含数据及直接和这些数据相关的逻辑.任何事件处理代码

HTML Meta标签中的viewport属性含义及设置

http://blog.hexu.org/archives/1947.shtml 随着高端手机(Andriod,Iphone,Ipod,WinPhone等)的盛行,移动互联应用开发也越来越受到人们的重视,用html5开发移动应用是最好的选择.然而,每一款手机有不同的分辨率,不同屏幕大小,如何使我们开发出来的应用或页面大小能适合各种高端手机使用呢?学习html5 viewport的使用能帮你做到这一点……viewport 语法介绍: 1 2 3 4 5 6 7 8 9 10 11 12 <!--

php curl 生成的cookie 文件含义 cookie 属性含义

最近用了curl 感觉还是很方便的,看了下curl生成的 cookie 文件 格式 , 对其中一些值的含义不是很明白,去找了些cookie的资料看了下,做下备忘 PHP curl 生成 的 cookie文件 格式如下 # Netscape HTTP Cookie File # http://curl.haxx.se/rfc/cookie_spec.html # This file was generated by libcurl! Edit at your own risk. jifen.xx.

简析Jmeter中一些属性含义

一.线程组中3个线程属性的解析 看到网上很多对这个3个属性非常统一的解释,但是自己操作的数据却无法解释通,百思不得其解,终于在我师父的帮助下,豁然开朗. 当然还有好多没有弄懂的地方,但是起码我对于设置的这个3个属性值有了很好的理解,下面将已举例子的形式更好的阐述. 1.     线程数:2 ramp-up period (in seconds):1 循环次数:永远 持续时间:1分钟 Q:按照上述的设置,1秒钟发2个线程,60s是120个线程,那么聚合报告中的samples应该是120,可是实际上

Route exact属性含义

<Route>组件有如下属性: path(string): 路由匹配路径.(没有path属性的Route 总是会 匹配): exact(bool):为true时,则要求路径与location.pathname必须完全匹配: strict(bool):true的时候,有结尾斜线的路径只能匹配有斜线的location.pathname: 再次奉上两个鲜活的例子: exact配置: 路径 location.pathname exact 是否匹配 /one /one/two true 否 /one /

shiro过滤器过滤属性含义

securityManager:这个属性是必须的. loginUrl :没有登录的用户请求需要登录的页面时自动跳转到登录页面,不是必须的属性,不输入地址的话会自动寻找项目web项目的根目录下的”/login.jsp”页面. successUrl :登录成功默认跳转页面,不配置则跳转至”/”.如果登陆前点击的一个需要登录的页面,则在登录自动跳转到那个需要登录的页面.不跳转到此. unauthorizedUrl :没有权限默认跳转的页面 其权限过滤器及配置释义 anon:例子/admins/**=a