通过 EXPLAIN 判断查询是否回表
要判断查询是否存在回表操作,可以使用 EXPLAIN 分析查询计划。以下是如何通过 EXPLAIN 输出的 Extra 字段判断:
- Using Index:表示出现索引覆盖,查询所需的字段都在索引中,不需要回表。
- Using Index Condition:表示使用了索引查找,但需要过滤,因为要过滤的字段不在索引中。不回表。
- Using Index & Using where:表示索引中可以找到select的数据,但需要根据where条件过滤。不回表。
- Using where:在使用到了索引的情况下,Extra是Using where,表示回表查询数据。
- 主键查询:不回表,因为要找的字段从聚簇索引上直接查找,不需要回表。但是 Extra 无法反映这一点。
结合你的问题,EXPLAIN 输出显示:Using temporary; Using filesort,这意味着使用了临时表和文件排序,需要回表。因此,该查询存在回表操作。
以上就是EXPLAIN 显示 "Using temporary; Using filesort",这是否意味着查询需要回表?的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系 yyfuon@163.com