Nếu bạn đang thực hiện và tổng hợp, bạn cần thực hiện tương tự như SQL, có nghĩa là chỉ định hoạt động tổng hợp cho mỗi cột, tùy chọn duy nhất bạn có là sử dụng $$ROOT
nhà điều hành
db.test.aggregate(
[
{ $sort: { timestamp: 1 } },
{
$group:
{
_id: "$fooId",
timestamp: { $last: "$$ROOT" }
}
}
]
);
Nhưng điều đó sẽ thay đổi kết quả một chút
{ "_id" : "1", "timestamp" : { "_id" : ObjectId("570e6be3e81c8b195818e7fa"),
"fooId" : "1", "status" : "A", "timestamp" :ISODate("2016-01-01T00:00:00Z"),
"otherInfo" : "BAR" } }
Nếu bạn muốn trả lại định dạng tài liệu ban đầu, bạn có thể cần một giai đoạn $ project sau đó