Mongodb 获取每个子集的最新对象

Mongodb 获取每个子集的最新对象,mongodb,mongoose,Mongodb,Mongoose,我正在开发一个基于和的应用程序。我的一个架构具有以下形式: var schema = new mongoose.Schema( { name: { type: String }, timestamp: { type: Number, default: Date.now }, // further properties }); schema.index({ name: 1, timestamp: -1 }); 我想检索最新的对象,即一组名称字符串的最大时间戳 例如,考虑一

我正在开发一个基于和的应用程序。我的一个架构具有以下形式:

var schema = new mongoose.Schema(
{
    name: { type: String },
    timestamp: { type: Number, default: Date.now },
    // further properties
});
schema.index({ name: 1, timestamp: -1 });
我想检索最新的对象,即一组名称字符串的最大时间戳

例如,考虑一组名称[ a,b′]。如何查询数据库,以便返回一组对象,其中包含id='a'的最新条目和id='b'的最新条目


[更新:目的是避免多次查询数据库,即每个名称查询一次。]

如何查询数据库,以便返回包含最新where id=='a'的对象集合

db.collection.find{name:'a'}.sort{timestamp:-1}

而最新的条目id=='b'

db.collection.find{name:'b'}.sort{timestamp:-1}.limit1