首页 > 数据库技术 > 详细

mysql - explain

时间:2019-11-07 14:48:48      阅读:59      评论:0      收藏:0      [点我收藏+]

explain + 查询语句,会返回mysql处理sql语句的分析结果

 

EXPLAIN 
SELECT t1.t_id FROM table1 t1 WHERE t1.t_id = (SELECT MIN(t_id) FROM table2)
UNION 
SELECT t3.t_id FROM table3 t3

 

结果:

技术分享图片

 

 

 

 

 1.id: 表的读取顺序

代表优先级,数字越大,先被加载

 

2.select_type : 数据读取操作的操作类型

simple  简单查询,没有复杂结构

primary  有子查询时,最外层的是primary

subquery   子查询

derived      衍生的,一般会出现在from 后面跟select 时(嵌套查询)。

union                   union查询后面的table会被标记为union

union result         union 查询的结果

 

3. table:   表名

 

4. type:访问类型

性能从好到差依次是:

1. system(系统类型:单行数据,const的特例,等于系统表,基本见不到)   = =不过我测试的时候就算一条数据也达不到system。。。

2. const(常量类型:利用 主键,或者union index)

3. eq_ref (唯一索引 (union index) 扫描,只有一条记录匹配。)

4. ref,   (单行非唯一索引 (index) 扫描)

5. range,

6. index(索引查询),

7. ALL(全表扫描)

 

 

ref 或者 range 级别已经可以满足大部分需求。

 

5. possible_keys 

 

6. key 

 

7. key_len 

 

8. ref 

 

9. rows 

 

10. Extra

mysql - explain

原文:https://www.cnblogs.com/clamp7724/p/11811632.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!