为什么Mysql读取的行多于我设置的限制?

时间:2017-05-19 15:56:59

标签: mysql database web

explain select * from user where nick = 'vertichvostka' limit 1;

表有大约300万行。 为什么mysql读取21012行,如果我设置限制1?

enter image description here

1 个答案:

答案 0 :(得分:1)

站在这篇旧文章:MySQL EXPLAIN limits and errors

  

估算行数时不考虑LIMIT 即使你有LIMIT限制将检查多少行,MySQL仍然会打印完整的数字。

当然,当您实际执行查询时,它将在使用limit子句指定的行数后停止:

来自:https://dev.mysql.com/doc/refman/5.5/en/limit-optimization.html

  

只要MySQL向客户端发送了所需的行数,就会中止查询