Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 获得给定键的最大值_Mongodb_Mongodb Query_Aggregation Framework - Fatal编程技术网

Mongodb 获得给定键的最大值

Mongodb 获得给定键的最大值,mongodb,mongodb-query,aggregation-framework,Mongodb,Mongodb Query,Aggregation Framework,我已执行以下查询: db.Indiv2.aggregate( {$unwind: '$conso'}, {$group: {_id: {conso:'$conso.nom_commercial', region:"$region"}, sum: {$sum: 1}}}, {$sort : {sum : -1}} ); 返回以下内容: { "_id" : { "conso" : "x", "regio

我已执行以下查询:

db.Indiv2.aggregate(
    {$unwind: '$conso'},
    {$group: {_id: {conso:'$conso.nom_commercial', region:"$region"}, sum: {$sum: 1}}},
    {$sort : {sum : -1}}
);
返回以下内容:

    {
        "_id" : {
            "conso" : "x",
            "region" : 1
        },
        "sum" : 73226.0
    },
    {
        "_id" : {
            "conso" : "x",
            "region" : 8
        },
        "sum" : 25683.0
    },
    {
        "_id" : {
            "conso" : "grandlait demi �cr�m� uht",
            "region" : 1
        },
        "sum" : 251.0
    }

共有21个不同的地区,我正在尝试按地区获取消费最多的商品。如何使用“sum”返回给定每个区域的最高值?

在聚合管道的末尾添加以下两个阶段就足够了:

$group: {
    _id: "$_id.region",
    "conso": {
        $first: "$_id.conso"
    },
    "sum": {
        $first: "$sum"
    }
}