zoukankan      html  css  js  c++  java
  • mysql explain

    一、type  

      联接类型(检索方式),分为:

      a. const

        常数级别,使用了主键或者唯一索引,只需要读取一次

          b. eq_ref

              使用了主键或者唯一索引,一般是多表关联下会显示这个类型

           c. ref  

              使用了一般索引(主键、唯一索引之外的),一般是多表关联下会显示这个类型

           d. ref_or_null

              使用了一般索引(主键、唯一索引之外的),一般是多表关联下会显示这个类型,并且专门添加了包含null值的搜索

           e. index_merge

               使用了索引合并,可能会涉及多个索引,key表示索引列表

            f. unique_subquery

               子查询中使用了非唯一索引

            g. index_subquery

               子查询中使用了唯一索引

            h. range

               范围查找

             i. index

               会扫描索引文件,而all 是扫描数据文件

              j. all

              表扫描,扫描数据文件

    二、select_type

          sql语句的类型

         a. simple

       最简单的查询类型,没有用到子查询(subquery)或者并集(union)

         b. primary

            在子查询语句最外面的或者union语句最前面的select 语句

         c. union 

            在union后面或者在union中第二个select语句

         d. derived

             派生表,主select语句中from后面的 select 语句 

         e. union result

             并集后的结果  

          f. dependent union 

       首先符合union的要求,其次他对主select语句是有依赖的,mysql的查询优化器会将in语句优化成exist语句,变成一个关联查询

          g. subquery

             子查询第一个select

           h. dependent subquery

             首先是subquery类型,其次子查询对主select有依赖

    三、extra 

      sql查询过程中的详细信息

      a. using filesort

       是指在mysql进行了一次额外的排序,而不是通过磁盘文件排序

       一般order by 没有建索引,或者没有建覆盖索引 等问题会引发filesort

      b. using temporary 

       

    二、其他

          a. possible keys 和 keys

           可能用到的索引和实际用到的索引

          b. key_len

           索引长度

           c. ref

           索引使用的数据,如果是等号,则是等号右边的数据

          d. rows

           mysql认为执行sql必须检查的行数 

    参考: http://www.cnblogs.com/zhanjindong/p/3439042.html#select_type  (MySQL优化—工欲善其事,必先利其器之EXPLAIN)

         http://blog.csdn.net/hguisu/article/details/7161981 (MySQL Order By实现原理分析和Filesort优化)

  • 相关阅读:
    Eclipse中配置约束(DTD,XSD)
    Eclipse集成tomcat
    java使用dom4j对XML进行CURD操作
    SQL数据库操作(CURD)
    Java-IO流总结
    Java-集合框架总结
    AES apache commons-crypto 对称加密
    Redis
    Axis2 客户端调用 设置超时时间
    Sybase 修改数据库默认排序
  • 原文地址:https://www.cnblogs.com/wuMing-dj/p/6909322.html
Copyright © 2011-2022 走看看