如何在不使用sort的情况下检索mongodb-mongoose中最近添加的文档?

时间:2017-03-09 21:34:47

标签: node.js mongodb mongoose mongodb-query

我有一个大的mongodb集合,其中每个文档代表一个简单的日志消息,它以设定的时间间隔(比如1分钟)发生。每当我使用Mongoose进行Find时,我会按照添加的顺序获取数据库的全部内容。我正在寻找一个查询,我可以在不对时间戳进行排序的情况下获取最后10个添加的记录。以下是我的文件样本:

[ { _id: 58bd2dcd51d1169260ccbdac,
  contentID: 1,
  clicks: 50,
  views: 61 },
 { _id: 58bd43d40fda0d25b0c6724e,
  'contentID: ': 1,
  clicks: 45,
  views: 72 },
{ _id: 58bd54ae2d67e820143eddda,
  'contentID: ': 1,
  clicks: 25,
  views: 32 }]

1 个答案:

答案 0 :(得分:3)

不幸的是,我相信您必须在查询中使用sort。

example.find()sort.({"_id": -1}).limit(10)

使其更容易,创建变量然后调用变量

var q = db.example.find()sort.({"_id": -1}).limit(10);
q.exec(function() ...},{})