node.js - Mongodb Nodejs 中的分页

标签 node.js mongodb pagination

是否有任何方法可以获取 MongoDB 中查找操作中的文档总数以及查询中的跳过和限制

 MongoClient.connect(Config.dbURI, function (err, db) {
    if (!err) {
        console.log("We are connected");
        console.log(uniqueId)
        db.collection(dbName).find({'uniqueId': uniqueId, 'isDeleted': false})
            .sort({modifiedDateISO: -1})
            .limit(parseInt(limit))
            .skip(parseInt(limit * page))
            .toArray((errFindChat, dataFindChat) => {

                           console.log(errFindChat, dataFindChat);

     });
});

最佳答案

我假设“uniqueId”不是主键!

MongoClient.connect(Config.dbURI, function (err, db) {
   if (!err) {
       console.log("We are connected");
       console.log(uniqueId)
       db.collection("collname").aggregate(
            [
              { "$match":  { "uniqueId": uniqueId, 'isDeleted': false} },
              { "$count":  "total" }, 
              { "$sort" :  {"modifiedDateISO": -1 },
              { "$limit":  parseInt(limit) },
              { "$skip" :  parseInt(limit * page) }  
            ]

        ).toArray((errFindChat, dataFindChat) => {
              console.log(errFindChat, dataFindChat);
        });
    }
});

MongoDB Aggregate Count

关于node.js - Mongodb Nodejs 中的分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45371171/

相关文章:

linux - 如何重置mongodb缓存

php - PHP 分页类和 AJAX/JQuery 的链接错误

java - 是否可以使用 JpaRepository<T, I> 在 jsp 中分页

javascript - 无法向特定房间发送消息[socket.io]

java - 通过示例在 MongoRepository 查询中包含 Null 检查

javascript - 从 mongodb nodejs 延迟返回集合数组

php - 在 Laravel 5.1 分页中使用漂亮的 URL

node.js - 你如何在 Mongoose 中将 _id 从 ObjectID 更改为 Number

javascript - 如何更新 Recoil.js 外部组件中的原子(状态)? ( react )

node.js - 如何使用 async/await 和 Promise 响应?