Mysql 如何";限制50000,1“;?

Mysql 如何";限制50000,1“;?,mysql,Mysql,所以,限制50000,1不起作用?那么,为什么呢?如果需要几行之后的行,该怎么办 我在读到它,如果您指定一个限制,MySQL将不受限制地处理查询,然后继续读,直到它到达限制点 换句话说,如果指定LIMIT 50000,1,数据库将必须读取50001条记录才能获得您感兴趣的记录 如果限制较低,这并不重要,但是如果限制较高,则会为查询增加大量时间 所有这些都包含在您提供的链接中(这似乎是一个很好的资源) 如果您正在执行此类操作,并且需要在大量页面上执行性能测试,那么最好执行更直接的查询,例如查询排序

所以,
限制50000,1
不起作用?那么,为什么呢?如果需要几行之后的行,该怎么办


我在

读到它,如果您指定一个
限制
,MySQL将不受限制地处理查询,然后继续读,直到它到达限制点

换句话说,如果指定
LIMIT 50000,1
,数据库将必须读取50001条记录才能获得您感兴趣的记录

如果限制较低,这并不重要,但是如果限制较高,则会为查询增加大量时间

所有这些都包含在您提供的链接中(这似乎是一个很好的资源)


如果您正在执行此类操作,并且需要在大量页面上执行性能测试,那么最好执行更直接的查询,例如查询排序列大于上一页上最后一个条目的位置。当然,这种方法也有缺陷,但有一点比
限制50000,1
更快(当然,只要你有一个索引)

它没有说它不起作用,只是说性能可能会受到影响。正如您所看到的,作者建议您可以记住最后一个id,并执行
其中id>最后一个id限制20
,而不仅仅是
限制5000,20

小心使用索引来限制 如果需要,排序是有效的 几行,即使是一些额外的筛选 发生,因此您需要进行更多扫描 按索引的行,然后按限制请求。 然而,如果你在处理极限 具有大偏移效率的查询 我会受苦的。上限可能为1000,10 要比极限0,10慢得多。信息技术 这是事实,大多数用户不会走得更远 然而,结果超过10页 搜索引擎机器人可能会做得很好 所以我见过机器人在看200个+ 在我的项目页面。也适用于许多网站 未能处理此问题的站点 提供非常简单的任务来启动 DOS攻击-请求页面带有一些 连接数少且数量大 够了。如果你不这样做 还有别的事吗?一定要堵住 具有太大页码的请求

对于某些情况,例如,如果结果 如果是静态的,那么 预计算结果以便查询 他们在寻找职位。所以不是 查询限制为1000,10,您将有 位置在1000和1009之间 对于任何一种情况都有相同的效率 位置(只要已索引)