4.7 explain 之 Extra
一、说明
包含不合适在其他列中显示,但十分重要的信息。
二、分类
a.
Using filesort : 说明mysql 会对数据使用一个外部的索引排序,而不是按照表内的索引顺序排序进行读取的。mysql中无法利用索引完成的排序操作车称为 “ 文件排序 ”。
b.
Using temporary : 使用了临时表保存中间结果,mysql 在对查询结果排序的时候使用了临时表。常见于order by 和分组查询 group by。
c.
Using index : 表示相应的select操作中使用了覆盖索引 ( Covering Index ), 避免访问了表的数据行,效率不错! 如果同时出现using where,表明索引被用来执行执行索引值的查找; 如果没有同时出现using where ,表明索引用来读取数据而非执行查找动作。
d.
Using where : 表名使用了where 过滤。
e.
Using join buffer : 使用了连接缓存。
f.
impossible where : where 子句的值总是false,不能用来获取任何元素组。
g.
在没有group by 子句的情况下,基于索引优化MIN/MAX操作者或者对于MySAM存储引擎优化count(*) 操作,不必等到执行阶段再进行计算,查询执行计划生成的阶段即完成优化。
f.
distinct : 优化distinct操作,在找到第一匹配的元素后即停止同样的动作。
关注我的公众号,精彩内容不能错过
作者:程序员果果
出处:blog.itwolfed.com
欢迎关注公众号——《程序员果果》 ,分享SpringBoot、SpringCloud、Dubbo、Golang、Docker相关知识与技巧。
原创 Java 博客,点我看看?