mysql中explain中展示出对应的解释含义


1、id

每个被独立执行的操作的标识,表示对象被操作的顺序;id值大,先被执行;如果相同,执行顺序从上到下。

若没有子查询和联合查询,id则都是1。Mysql会按照id从大到小的顺序执行query,在id相同的情况下,则从上到下执行。


2、select_type

查询中每个select子句的类型

(1)SIMPLE  (2)PRIMARY/UNION  (3)DEPENDENT UNION/UNIOIN RESULT  (4)SUBQUERY/DEPENDENT SUBQUERY  (5)DERIVED/MATERIALIZED  (6)UNCACHEABLE SUBQUERY/UNCACHEABLE UNION



3、table

名字,被操作的对象名称,通常是表名,或者表的别名,或者一个为查询产生临时表的标示符(如派生表、子查询、集合)。


4、type

代表查询执行计划中表使用的连接方式。连接操作的类型。

(1)SYSTEM (2)CONST (3)EQ_REF  (4)REF  (5)REF_OR_NULL (6)RANGE  (7)INDEX_SCAN  (8)ALL  (9)UNIQUE_SUBQUERY  (10)INDEX_SUBQUERY  (11)INDEX_MERGE  (12)FT

system > const > eq_ref > ref > fulltext > ref_or_null > index_merge > unique_subquery > index_subquery > range > index > ALL

一般来说,得保证查询至少达到range级别,最好能达到ref。


5、partitions

匹配的分区信息(对于非分区表值为NULL)。


6、possible_keys

备选的索引(列出可能被使用到的索引)


7、key

经优化器选定的索引;常用ANALYZE TABLE命令,可以使优化器正确地选择索引。如果没有选择索引,键是NULL。要想强制MySQL使用或忽视possible_keys列中的索引,在查询中使用FORCE INDEX、USE INDEX或者IGNORE INDEX。


8、key_len

被优化器选定的索引键的长度,单位是字节。


9、ref

表示本行被操作的对象的参照对象(被参照的对象可能是一个常量用const表示,也可能是其他表的key指向的对象)。


10、rows

查询执行所扫描的元组个数(对于InnoDB,此值是估计值)。


11、filtered

按照条件表上数据被过滤的元组个数的百分比,rows×filtered/100可以求出过滤后的元组数即实际的元组数。


12、Extra

(1)using where  (2)using temporary  (3)using filesort  (4)using index (5)using join buffer

(6)impossible where  (7)select tables optimized away  (8)distinct

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值