explain select * from user where nick = 'vertichvostka' limit 1;
表有大约300万行。 为什么mysql读取21012行,如果我设置限制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向客户端发送了所需的行数,就会中止查询