【发布时间】:2022-06-15 22:11:33
【问题描述】:
我的代码中有以下聚合函数来计算在数据库中找到值的次数:
let data: any = await this.dataModel.aggregate(
[
{
$match: {
field: new ObjectID(fieldID),
},
},
{
$group: {
_id: "$value",
total_for_value: { $sum: 1 },
},
},
]
);
这可以正常工作,但是我的数据设置有点不同。我有两种类型的值字段。有些是这样的:
_id: 'FEMALE'
还有一些这样的:
_id: value: "FEMALE"
有没有办法将 _id 和 _id.label 相同的那些分组?目前它分别计算它们。
【问题讨论】:
-
示例文件?
-
创建三个小组赛阶段。一个用于您的
_id,一个用于_id.value,然后一个用于对这两者进行分组。
标签: javascript mongodb aggregate