我使用MySQL服务器版本5.5.14,现在我正在尝试使用Explain命令进行这个简单的SQL查询:
EXPLAIN SELECT id, name, thumb FROM `twitter_profiles` LIMIT 10;
它向我显示了这个结果:
+----+-------------+-------+------+---------------+------+---------+------+-------+-------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+-------+------+---------------+------+---------+------+-------+-------+
| 1 | SIMPLE | tp | ALL | NULL | NULL | NULL | NULL | 40823 | |
+----+-------------+-------+------+---------------+------+---------+------+-------+-------+
1 row in set (0.02 sec)
我的问题是为什么它扫描整个表而不是像我在 LIMIT 子句中指定的那样获取前 10 行?
这里有一个很好的文章链接MySQL EXPLAIN 限制和错误
估计行数时不考虑 LIMIT 即使
如果你有 LIMIT 来限制 MySQL 将检查的行数
仍会打印完整号码
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)