Mysql-使用explain对索引进行分析

说明:实际字段分析与书上的内容由于版本不同,一些内容有些区别

一、格式

       explain select select_options

       Mysql-使用explain对索引进行分析

Mysql-使用explain对索引进行分析

二、字段分析

       1)、id:这个表示的是select所属的编号

       2)、select_type:这个字段表示select查询的类别

              1、simple:表示简单查询

              Mysql-使用explain对索引进行分析

              2、primary:一般是有子查询的情况,表示主查询、或者最外层查询

Mysql-使用explain对索引进行分析

              3、union:表示union查询后面的子句

              Mysql-使用explain对索引进行分析

              4、union result:表示连接查询的结果

              5、dependent subquery:子查询的第一个select

Mysql-使用explain对索引进行分析

       3)、table:所属表名称

       4)、type:表示使用的索引类别,这个是索引分析的关键内容(查询速度类别,由前到后表示由快到慢)

              1、system:表示只有一行的系统表(const的特殊情况)

       Mysql-使用explain对索引进行分析

              2、const:表示查询结果只会有一条结果

Mysql-使用explain对索引进行分析

              3、eq_ref

Mysql-使用explain对索引进行分析

Mysql-使用explain对索引进行分析

              4、ref:用于一般索引

Mysql-使用explain对索引进行分析

Mysql-使用explain对索引进行分析                                5、index_merge:一般表示查询用到的条件有多个索引

Mysql-使用explain对索引进行分析

           6、range

Mysql-使用explain对索引进行分析

Mysql-使用explain对索引进行分析

          7、index:表示全表扫描、比all要快,其是扫描的索引表

          8、all:表示全表扫描

Mysql-使用explain对索引进行分析

Mysql-使用explain对索引进行分析