3
从具有两个字段的文档中,例如“player_1”和“player_2”。我想通过将它们合并为一个无差异的字段来聚合它们。下一步将计算无论来自一个领域还是另一个领域的值出现的次数。例如:在一个阵列中合并两个字段
{
_id : ObjectId("52f0795a58c5061aa34d436a"),
"game_id": 765
"player_1" : 1,
"player_2" : 2
}
将结果:
{
"game_id": 765,
"player" : 1
},
{
"game_id": 765,
"player" : 2
}
因为这个领域是不是数组,我还没有发现聚集他们这样的解决方案。
例如以下aggregation命令不明白我tryining获取文档字段
[
{ $project: {
game_id: true,
player: { $setUnion: [['$player_1'], ['$player_2']] } }
},
{ $unwind: '$player' }
]
和结果:
{
"game_id": 765,
"player": "$player_1"
},
{
"game_id": 765,
"player" : "$player_2"
}