我有一个mongo查询,我需要分组,然后从最大值中减去最小值,我有问题这样做。
这是我的问题:
{
$group : {
_id : {
type: "$type",
id : "$id"
},
sent : {$subtract: [{$max : "$value"}, {$min : "$value"}]}
}
}
但我收到此错误消息:
$ subtract累加器是一元运算符
我想知道如何在小组赛阶段中减去。
答案 0 :(得分:3)
您可以尝试以下查询:
db.[collection].aggregate([
{
$group : {
_id : {
type: "$type",
id : "$id"
},
maxValue : {$max : "$value"} ,
minValue : {$min : "$value"}
}
},
{
$group : {
_id : {
type: "$_id.type",
id : "$_id.id"
},
sent : {$subtract: [ "$maxValue", "$minValue" ]}
}
}
])