假设我有一个用户表。 我的表中有几千条记录。
当我尝试过
User.where("category = 'Normal'").offset(3000).limit(10)
它向我返回他的 ID 从 4184 开始的用户
我在想偏移量是否会从 4001 开始?我试过检查id为4000和4001的用户,有这两条记录存在。
有什么约束或情况会出现这个问题吗?
最佳答案
User.offset(3000)
将从第 3001 个用户开始选择。它没有考虑用户 id
的方式。
在您的例子中,id
4000 和 4001 的用户属于前 3000 名用户。
如果要从第4001个用户中选择:
User.where('category IS ? AND id >= ?', 'Normal', 4001).limit(10)
关于mysql - 偏移量限制mysql查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18744748/