我希望汇总以下数据
{
"user": "user1",
"error": true
}
{
"user": "user2",
"error": false
}
{
"user": "user1",
"error": false
}
Into
{
"_id": "user1",
"errorCount": 1,
"totalCount": 2
},
{
"_id": "user2",
"errorCount": 0,
"totalCount": 1
}
使用 $cond 运算符,可以使用以下方法来实现:
$group: {
_id: "$user",
errorCount : { "$sum" : {"$cond" : ["$error", 1, 0]}},
totalCount : { "$sum" : 1 }
}
但是,由于我使用的 Spring-data-mongodb 尚不支持 $cond (截至 1.3.4-RELEASE),所以我无法执行此操作。
有没有办法在没有 $cond 的情况下进行相同的聚合?