【发布时间】:2016-02-18 11:00:00
【问题描述】:
我有以下文档结构(本示例已简化)
{
_id : ObjectId("sdfsdf"),
result : [1, 3, 5, 7, 9]
},
{
_id : ObjectId("asdref"),
result : [2, 4, 6, 8, 10]
}
我想得到那些result数组的总和,但不是总和,而是一个新数组,对应于元素基础上的原始数组的总和,即
result : [3, 7, 11, 15, 19]
我在这里搜索了无数问题,其中一些接近了(例如this one、this one 和this one),但我无法完全到达那里。
我可以很好地得到每个数组的总和
aggregate(
[
{
"$unwind" : "$result"
},
{
"$group": {
"_id": "$_id",
"results" : { "$sum" : "$result"}
}
}
]
)
这给了我
[ { _id: sdfsdf, results: 25 },
{ _id: asdref, results: 30 } ]
但我不知道如何获得每个元素的总和
【问题讨论】:
标签: mongodb mongodb-query aggregation-framework