Wenn Sie eine Aggregation durchführen, müssen Sie ähnlich wie bei SQL vorgehen, was bedeutet, dass Sie die Aggregationsoperation pro Spalte angeben. Die einzige Option, die Sie haben, ist die Verwendung von $$ROOT
Betreiber
db.test.aggregate(
[
{ $sort: { timestamp: 1 } },
{
$group:
{
_id: "$fooId",
timestamp: { $last: "$$ROOT" }
}
}
]
);
Aber das wird die Ausgabe ein wenig verändern
{ "_id" : "1", "timestamp" : { "_id" : ObjectId("570e6be3e81c8b195818e7fa"),
"fooId" : "1", "status" : "A", "timestamp" :ISODate("2016-01-01T00:00:00Z"),
"otherInfo" : "BAR" } }
Wenn Sie das ursprüngliche Dokumentformat zurückgeben möchten, benötigen Sie danach wahrscheinlich eine $project-Stufe