让我们考虑一下这个例子:
https://docs.mongodb.com/manual/reference/operator/aggregation/last/ 我想包括其他字段,如上次销售的价格或数量。我的意思是如何包含不属于key或者聚合表达式的字段。有可能吗?
答案 0 :(得分:1)
基本上可以将整个文档作为$ group阶段的输出。有一个特殊变量$$ROOT,在这种情况下很有用。因此,例如,如果您想获取上次处理的文档,可以使用以下代码:
db.sales.aggregate([
{ "$sort": { "date": 1 } },
{
$group: {
_id: "$item",
lastDocument: { $last: "$$ROOT" }
}
}
])