explain 的结果

id

select_type   查询的序列号
        select_type
          simple (不含子查询)
          primary (含子查询、或者派生查询)
            subquery (非from子查询==》子查询)
            derived (form型子查询==》派生查询)
            union
            union result

table       输出的行所引用的表(也有可能是别名)。

type      联合查询所使用的类型。
type        显示的是访问类型,是较为重要的一个指标,结果值从好到坏依次是:
system
      > const
      > eq_ref
      > ref
      > fulltext
      > ref_or_null
      > index_merge
      > unique_subquery
      > index_subquery
      > range
      > index
      > ALL
      const,表示通过索引一次就找到了;
      primary,表示使用了主键;
      all,表示为全表扫描;

possible_keys  可能用到的key
        指出MySQL能使用哪个索引在该表中找到行。如果是空的,没有相关的索引。
        这时要提高性能,可通过检验WHERE子句,看是否引用某些字段,
        或者检查字段不是适合索引。

key       最终使用的索引
          显示MySQL实际决定使用的键。如果没有索引被选择,键是NULL。
ref        因为这时认为是多个匹配行,在联合查询中,一般为REF。

key_len        索引的长度、越短越好、速度越快
        显示MySQL决定使用的键长度。
          如果键是NULL,长度就是NULL。
        文档提示特别注意这个值可以得出一个多重主键里mysql实际使用了哪一部分。

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

rows       这个数表示mysql要遍历多少数据才能找到,在innodb上是不准确的。

extra        如果是Only index,这意味着信息只用索引树中的信息检索出的,这比扫描整个表要快。
        如果是where used,就是使用上了where限制。
        如果是impossible where 表示用不着where,一般就是没查出来啥。
        如果此信息显示Using filesort或者Using temporary的话会很吃力,
        WHERE和ORDER BY的索引经常无法兼顾,
        如果按照WHERE来确定索引,那么在ORDER BY时,
        就必然会引起Using filesort,
        这就要看是先过滤再排序划算,还是先排序再过滤划算。

SQL explain详细结果的更多相关文章

  1. [Oracle] SQL*Loader 详细使用教程(2)- 命令行参数

    sqlldr工具   SQL*Loader的客户端工具是sqlldr,在操作系统的命令行下输入sqlldr,后面不接任何参数,将显示帮助信息如下所示(所有命令行参数的简单描述及其默认值),所以你并不需 ...

  2. [Oracle] SQL*Loader 详细使用教程(3)- 控制文件

    控制文件是SQL*Loader里最重要的文件,它是一个文本文件,用来定义数据文件的位置.数据的格式.以及配置数据加载过程的行为,在sqlldr中以control参数指定控制文件.   在控制文件里配置 ...

  3. SQL语句详细汇总

    SQL语句详细汇总 | 浏览:3061 | 更新:2013-06-10 19:50 一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 d ...

  4. Datagrip导入导出为一个sql文件详细说明 (mysql)

    Datagrip导入导出为一个sql文件详细说明 导出: (我的无法截图, 借用一张) 导入: (我的无法截图, 再借用一张) 完

  5. SQL EXPLAIN解析

    本文转载自MySQL性能优化最佳实践 - 08 SQL EXPLAIN解析 什么是归并排序? 如果需要排序的数据超过了sort_buffer_size的大小,说明无法在内存中完成排序,就需要写到临时文 ...

  6. MySQL SQL Explain输出学习

    MySQL的explain命令语句提供了如何执行SQL语句的信息,解析SQL语句的执行计划并展示,explain支持select.delete.insert.replace和update等语句,也支持 ...

  7. MySQL索引优化,explain详细讲解

    前言:这篇文章主要讲 explain 如何使用,还有 explain 各种参数概念,之后会讲优化 一.Explain 用法 模拟Mysql优化器是如何执行SQL查询语句的,从而知道Mysql是如何处理 ...

  8. Oracle SQL explain/execution Plan

    From http://blog.csdn.net/wujiandao/article/details/6621073 1. Four ways to get execution plan(anyti ...

  9. Hadoop Hive sql 语法详细解释

    Hive 是基于Hadoop 构建的一套数据仓库分析系统.它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,能够将结构 化的数据文件映射为一张数据库表,并提供完整的SQL查 ...

随机推荐

  1. Erlang gen_server进程花样作死

    本文主要记录各种情况下gen_server进程退出的表现. 研究动机起源于Elixir/Phoenix框架中遇到的一个进程异常退出问题.因为网络异常,客户端超过一段时间未发来消息,channel进程( ...

  2. Gulp开发教程(翻译)

    Building With Gulp =================== 原文地址 翻译出处 原创翻译,有不当的地方欢迎指出.转载请指明出处.谢谢! 对网站资源进行优化,并使用不同浏览器测试并不是 ...

  3. NYOJ 题目77 开灯问题(简单模拟)

    开灯问题 时间限制:3000 ms  |            内存限制:65535 KB 难度:1           描述 有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2 ...

  4. Codeforces Round #345(Div. 2)-651A.水题 651B.。。。 651C.去重操作 真是让人头大

    A. Joysticks time limit per test 1 second memory limit per test 256 megabytes input standard input o ...

  5. Max Sum(dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 Max Sum Time Limit: 2000/1000 MS (Java/Others)   ...

  6. 简单的面向对象(OO)练习

    学生设备管理系统: 每个学校都有很多班级,每个班级都有很多设备.(设备可以更新)每个设备都有购买价格,每种设备都有折旧率(如每年折旧10%) 按班级进行统计,指定的班级有多少的设数量? 按班级进行统计 ...

  7. 解决 重启nginx: [alert] kill(189, 1) failed (3: No such process)

    解决 nginx: [alert] kill(189, 1) failed (3: No such process) [root@localhost/]# nginx -s reloadnginx: ...

  8. [Golang]一道考察defer与命名返回值的题目

    题目 输出: 4 1 3 解释 当函数有可命名结果形参时,结果形参的初始值被设置为零值,函数的return语句会设置结果形参的值 当函数有可命名结果形参时,defer函数是可以修改它,然后再将它的值返 ...

  9. 从XMLHttpRequest请求响应里getResponseHeader(header)报错:Refused to get unsafe header "**" 问题解决

    问题产生原因: 原因1:W3C的 xhr 标准中做了限制,规定客户端无法获取 response 中的 Set-Cookie.Set-Cookie2这2个字段,无论是同域还是跨域请求: 原因2:W3C ...

  10. 网站搭建中,怎么区分ASP和PHP

    1:空间支持上 ASP:程序要求比较低,空间只要支持ASP+access即可运行 PHP:配置要求比较高,空间需要支持PHP及数据库,而且程序和数据库是单独的,一般的 unix空间都是这种配置. 2: ...