【发布时间】:2022-01-17 06:43:41
【问题描述】:
我现在已经通过 shell、Studio 3T IDE 和我的 API 本身对此进行了测试。
第一个查询如下所示:
Notification.find({
userId: ObjectId("...")
}).limit(20).sort('-createdAt')
它返回按createdAt 时间戳排序的以下文档(也嵌入在_id 字段中):
然后我运行下一个查询,我希望返回从 _id: ObjectId("615869eac849ec00205aa112") 开始的结果:
Notification.find({
userId: ObjectId("..."),
_id: { $lt: ObjectId("615869eac849ec00205aa115"}
}).limit(20).sort('-createdAt')
我希望这个命令可以让我接下来的 20 个结果按照与上面原始查询相同的降序排序。但是,我得到以下信息:
其中有 3 个来自原始查询的结果。 _id 字段在我用作游标的_id 和错误返回的结果之间显然是唯一的,但经过检查,createdAt 时间戳与我使用的文档_id 的createdAt 时间戳完全相同范围查询。
【问题讨论】:
-
也许这会有所帮助:sort({$natural:-1})
标签: mongodb mongoose pagination