我需要在我的
mongodb
集合中实现分页。这是我收藏的文档示例
{
"_id" : "<Mongo Generated>",
"category" : "abc",
"createdDate" : "<Date of creation of the document>",
"markedDate" : "<Date when the document is marked
(marking is an activity that is done via my application>"
}
这是我的要求:
abc
”类别中的所有文档,但是每页 10 个文档markedDate
(降序)对文档进行排序,然后按createdDate
(降序)我尝试执行以下查询以使用聚合对结果进行排序:
db.getCollection('testcollection').aggregate(
{$match:{"category" : "abc"}},
{$sort:{markedDate: -1, createdDate : -1}
})
但是,如何寻呼呢?我可以使用跳过+限制选项,但是在发布这个问题之前我浏览了一些帖子,并且不建议将其用于大型数据集。我预计我的收藏约有 75000 份文档。
此外,由于我的日期以 ISO 日期格式存储,因此我看到可见性仅在秒级别。我可能同时创建了 2 个文档。
在不影响性能的情况下对结果进行分页的最佳方式是什么?
请指教。
直接使用排序功能怎么样
db.testcollection.find({}).sort({createdDate:-1}).skip(1).limit(10)