mongoose:找到最新的文件

时间:2014-01-15 02:27:45

标签: javascript node.js mongodb mongoose

我有mongoose架构,它的day属性只是

Math.floor((new Date()).getTime() / (24 * 3600 * 1000))

我希望找到输入的最后一天的数据,所以今天说16085然后我想找到输入的最后一天。或者另一种说法是这样的。什么是day属性小于16085的文档,但大于day小于16085的所有其他文档的文档。

或其他方式

day属性少于16085的所有文档集的最大元素是什么

然后迭代我的所有文档,我怎么能这样做?

1 个答案:

答案 0 :(得分:8)

在shell中它将是:

db.test.find({day: {$lt: 16085}}).sort({day: -1}).limit(1)

找到day小于16085的所有文档,在day降序排序,然后取第一个。

在Mongoose中它会是这样的:

MyModel.find({day: {$lt: 16085}}).sort({day: -1}).limit(1).exec((err, docs) => { ... });