一尘不染

Mongoose:查找最新文档

node.js

我有Mongoose架构,其中有一个天属性

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

我想查找输入的最后一天的数据,所以说今天就是16085我要查找输入的最后一天。或者说另一种说法。什么是day属性小于等于16085但大于所有其他文档的文档day16085

或另一种方式

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

然后遍历我所有的文档,我该怎么做呢?


阅读 331

收藏
2020-07-07

共1个答案

一尘不染

在外壳中将是:

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) => { ... });
2020-07-07