1

可以说我有一个表用户。我的表中有几千条记录。

当我尝试

User.where("category = 'Normal'").offset(3000).limit(10)

它返回给我他的 id 从 4184 开始的用户

我在想偏移量将从 4001 开始吗?我尝试检查 id 为 4000 和 4001 的用户,有这两条记录存在。

任何约束或情况都会有这个问题?

4

1 回答 1

2

User.offset(3000)将从第 3001 个用户中选择。它没有考虑到 User id.

在您的情况下,具有id4000 和 4001 的用户属于前 3000 个用户。

如果要从第 4001 个用户中选择:

User.where('category IS ? AND id >= ?', 'Normal', 4001).limit(10)
于 2013-09-11T15:06:46.100 回答