Mysql LIMIT 运算符 - 不使用它时效率相同吗?

发布于 2024-10-26 00:43:37 字数 117 浏览 2 评论 0原文

为什么当我使用 LIMIT 时,mysql 检查相同的行数?我该如何解决这个问题?

在此处输入图像描述

How is it that when i use LIMIT, mysql checks the same number of rows? and how do i solve this?

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

小清晰的声音 2024-11-02 00:43:37

首先处理Where 子句。找到匹配项后,限制就会应用于结果集,因此必须先评估所有行以确定它们是否符合条件,然后才能应用限制。

The Where clause is processed first. Once the matches are found, the limit is applied on the result set, so all of the rows have to be evaluated to determine if they match the conditions before the limit can be applied.

热血少△年 2024-11-02 00:43:37

解释输出具有误导性。 Mysql 将使用 where 子句等评估查询,但在找到 LIMIT 数量的匹配行(本例中为 1)后它将停止。这是 mysql 的一个已知问题: http://bugs.mysql.com/bug.php ?id=50168

为了澄清...限制子句将按预期工作...只是解释输出不准确。

The explain output is misleading. Mysql will evaluate the query using the where clause and such, but it'll stop after it find LIMIT number of matching rows (1 in this case). This is a known issue with mysql: http://bugs.mysql.com/bug.php?id=50168

To clarify... the limit clause will work as expected... it's only the explain output that's inaccurate.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文