mysql explain extra理解
2018-01-23 14:52
302 查看
Extra表示附加信息,常见的有如下几种(也按查询效率从高到低排列):
Using index:表示使用索引,如果只有 Using index,说明他没有查询到数据表,只用索引表就完成了这个查询,这个叫覆盖索引。如果同时出现Using where,代表使用索引来查找读取记录, 也是可以用到索引的,但是需要查询到数据表。
Using where:表示条件查询,如果不读取表的所有数据,或不是仅仅通过索引就可以获取所有需要的数据,则会出现 Using where。如果type列是ALL或index,而没有出现该信息,则你有可能在执行错误的查询:返回所有数据。
Using filesort:不是“使用文件索引”的含义!filesort是MySQL所实现的一种排序策略,通常在使用到排序语句ORDER BY的时候,会出现该信息。
Using temporary:表示为了得到结果,使用了临时表,这通常是出现在多表联合查询,结果排序的场合。
Using index:表示使用索引,如果只有 Using index,说明他没有查询到数据表,只用索引表就完成了这个查询,这个叫覆盖索引。如果同时出现Using where,代表使用索引来查找读取记录, 也是可以用到索引的,但是需要查询到数据表。
Using where:表示条件查询,如果不读取表的所有数据,或不是仅仅通过索引就可以获取所有需要的数据,则会出现 Using where。如果type列是ALL或index,而没有出现该信息,则你有可能在执行错误的查询:返回所有数据。
Using filesort:不是“使用文件索引”的含义!filesort是MySQL所实现的一种排序策略,通常在使用到排序语句ORDER BY的时候,会出现该信息。
Using temporary:表示为了得到结果,使用了临时表,这通常是出现在多表联合查询,结果排序的场合。
相关文章推荐
- MySQL中explain执行计划中额外信息字段(Extra)详解
- mysql explain rows理解
- MySql中explain之后,type字段和Extra字段中的index-区别
- mysql explain中的type列含义和extra列的含义
- MySQL之explain 的type列 & Extra列
- mysql explain type 和extra 列的含义
- Mysql explain-Extra(using where,using index)使用详解
- MySQL之explain 的type列 & Extra列
- mysql explain中的type列含义和extra列的含义
- MySQL之explain 的type列 & Extra列
- Mysql—explain的参数详解及用法
- MySQL的explain
- 对MySql查询缓存及SQL Server过程缓存的理解及总结
- MySQL 使用explain分析sql语句的查询效率(一)
- mysql 存储过程理解
- mysql性能优化之explain
- 即使你认为自己已对 MySQL 的 LEFT JOIN 理解深刻
- 理解MySQL——索引与优化
- MySQL性能分析及explain的使用
- 理解MySQL——并行数据库与分区(Partition)