Mongo减去组聚合 [英] Mongo subtract in group aggregation

查看:411
本文介绍了Mongo减去组聚合的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个mongo查询,我需要分组,而不是从最大值中减去最小值,并且这样做有问题.

I have a mongo query and I need to group and than subtract min value from max value and I have issues doing that.

这是我的查询:

{
    $group : {
        _id :  {
            type: "$type",
            id : "$id"
            },
        sent : {$subtract: [{$max : "$value"}, {$min : "$value"}]}
    }
}

但是我收到此错误消息:

But I get this error message:

$ subtract累加器是一元运算符

The $subtract accumulator is a unary operator

我想知道如何在小组赛中减去.

I would like to know how do I subtract inside the group stage.

推荐答案

可以尝试以下查询:

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" ]}
        }
    }
 ]) 

这篇关于Mongo减去组聚合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆