【发布时间】:2021-12-20 00:24:08
【问题描述】:
我用一个简单的例子来解释我的 mongodb 集合看起来像这样, [
{
pid: erwer,
qty: 3,
LevelDetails: {
level1: { userId: 1, amount: 10 },
level2: { userId: 2, amount: 20 },
level3: { userId: 3, amount: 13 },
}
},
{
pid: qwsdfg,
qty: 1,
LevelDetails: {
level1: { userId: 1, amount: 10 },
level2: { userId: 4, amount: 20 },
level3: { userId: 3, amount: 13 },
}
},
]
从集合中,我需要每个用户的级别 1、级别 2 和级别 3 的总和。 查询结果应该是这样的 [
{ userId1: { TotalLevel1Amount: 20, TotalLevel2Amount: 0, TotalLevel3Amount: 0 } },
{ userId2: { TotalLevel1Amount: 0, TotalLevel2Amount: 20, TotalLevel3Amount: 0 } },
{ userId3: { TotalLevel1Amount: 0, TotalLevel2Amount: 0, TotalLevel3Amount: 26 } },
{ userId4: { TotalLevel1Amount: 0, TotalLevel2Amount: 20, TotalLevel3Amount: 0 } }
]
【问题讨论】:
标签: database mongodb go nosql aggregation-framework