我有mongoose架构,它的day属性只是
Math.floor((new Date()).getTime() / (24 * 3600 * 1000))
我希望找到输入的最后一天的数据,所以今天说16085
然后我想找到输入的最后一天。或者另一种说法是这样的。什么是day
属性小于16085
的文档,但大于day
小于16085
的所有其他文档的文档。
或其他方式
day
属性少于16085
的所有文档集的最大元素是什么
然后迭代我的所有文档,我怎么能这样做?
答案 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) => { ... });