我有以下数据
[
{
_id: ObjectId(),
level: 'High',
country: 'Palestine'
},
{
_id: ObjectId(),
level: 'Low',
country: 'Jordan'
},
{
_id: ObjectId(),
level: 'High',
country: 'Jordan'
}
]
我可以使用以下聚合轻松地对数据进行分组
{
$group: {
_id: '$level',
count: { $sum: 1 }
}
}
它给出了以下数据
[
{
_id: 'High',
count: 2
},
{
_id: 'Low',
count: 1
}
]
但是我也需要对国家和许多其他领域这样做,有没有一种方法可以在一个聚合中执行这一点,或者我应该只为每个聚合单独做一个组?
有关更多细节,我想在mongodb中执行弹性聚合操作
1条答案
按热度按时间u7up0aaq1#
对我来说,这似乎是
$facet
的一个确切用例。Mongo Playground