【发布时间】:2021-09-16 22:32:41
【问题描述】:
我想在我的数据库中查询最新的文档。我为它编写了以下函数,但它不返回最新条目,而是只返回数据库中的第一个条目。我尝试了 find() 而不是 findOne() 但它在数组中返回了一个对象,这不是我想要的。是否有原生 mongoose 函数以对象的形式返回最新文档?
const getLatestRound = module.exports.getLatestRound = function(callback){
SmallHistory.findOne().limit(1).sort({ date: -1 }).exec((err, data) => {
if(err) {
callback(new Error('Error querying SmallHistory (getLatestRound())'));
return;
}
if(data) {
callback(null, data);
return;
}
});
}
【问题讨论】:
-
替换为
limit和sort:SmallHistory.findOne().sort({ date: -1 }).limit(1).exec((err, data) => {。当你使用findOne时,你不需要limit。 -
为什么 findOne 使用限制?
标签: javascript node.js mongodb mongoose