node.js - Nodejs : Mongoose find latest entry of the DB with filter

标签 node.js mongodb mongoose

所以,我一直在努力寻找我的问题的正确答案,即使有些问题 come pretty close ,我不确定其中任何一个是否适用于我的特定情况:

我有一个不断被提供信息的 MongoDB,我想查询最新文档,但指定一个过滤器:

return new Promise((resolve, reject) => {
    model.findOne({ bar: "foo" }, {}, { sort: { n: -1 } }, function(
      err,
      obj
    ) {
      resolve(obj);
    });
  });

上面的代码没有实现我想要正确执行的操作...我的猜测是它首先查找带有键 bar/值 foo 的文档,然后对结果进行排序,因为“结果”实际上只是一个结果,它本身对“无”进行排序,因此返回在数据库中找到的第一个“foo”文档。

数据库有很多'foo'文档,我想查询最新的。

提前致谢。

最佳答案

我猜你打算在 bar 键处获取包含 foo 的最新文档,因此这将返回最新文档。

 return new Promise((resolve, reject) => {
        model.findOne({ bar: "foo" }, {}, { sort: { '_id': -1 } }, function(
          err,
          obj
        ) {
          resolve(obj);
        });
      });

关于node.js - Nodejs : Mongoose find latest entry of the DB with filter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47291053/

相关文章:

node.js - Angular2+Spring Boot : Unable to resolve context path issue | No data on frontend

javascript - 如何正确要求同一目录中的 JS 文件?

java - MongoDB - 使用 Java 添加嵌套数组

mongodb - 如何在Mongo中找到最新索引

javascript - 通过mongoose访问数组元素

javascript - Node.js & Express.js 字体区分

javascript - 调试 Node.js 应用程序时,WebStorm 在错误的文件上停止

c# - MongoDB C# 驱动程序 - 如何使用 Dictionary<string, string> 列表插入批处理

javascript - Mongoose MongoNetworkError//连接错误

node.js - Mongoose 在哪里查询 "or"