这篇文章主要介绍了MySQL中explain命令有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
下面来讲讲这个MySQL提供的explain命令:
语法:explain SQL语句例如:
1explain select * from user where id=1
执行完毕之后,它的输出有以下字段:
id
select_type
table
partitions
type
possible_keys
key
key_len
ref
rows
Extra
要想知道explain命名怎么使用,就必须把这些字段搞清楚
1. id
SELECT查询的标识符, 每个SELECT语句都会自动分配一个唯一的标识符
2. select_type
每个select查询字句的类型,具体类型以及对应作用如下表:
类型名 解释
SIMPLE 简单SELECT,不使用UNION或子查询等
PRIMARY 查询中若包含任何复杂的子部分,最外层的select被标记为PRIMARY
UNION UNION中的第二个或后面的SELECT语句
DEPENDENT UNION UNION中的第二个或后面的SELECT语句,取决于外面的查询
UNION RESULT UNION的结果
SUBQUERY 子查询中的第一个SELECT
DEPENDENT SUBQUERY 子查询中的第一个SELECT,取决于外面的查询
DERIVED 派生表的SELECT, FROM子句的子查询
UNCACHEABLE SUBQUERY 一个子查询的结果不能被缓存,必须重新评估外链接的第一行
3. table
显示这一行的数据是查哪张表的,不过有时短路显示的不是真实的表名。
大型站长资讯类网站! https://www.0817zz.com