Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.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 mongo的聚合_Mongodb_Mongodb Query_Aggregation Framework - Fatal编程技术网

Mongodb mongo的聚合

Mongodb mongo的聚合,mongodb,mongodb-query,aggregation-framework,Mongodb,Mongodb Query,Aggregation Framework,以下是我的数据库中的文档: { "_id" : ObjectId("58635ac32c9592064471cf5b"), "agency_code" : "v5global", "client_code" : "whirlpool", "project_code" : "whirlpool", "date" : { "datetime" : 1464739200000.0, "date" : 146473920

以下是我的数据库中的文档:

{ 
    "_id" : ObjectId("58635ac32c9592064471cf5b"), 
    "agency_code" : "v5global", 
    "client_code" : "whirlpool", 
    "project_code" : "whirlpool", 
    "date" : {
        "datetime" : 1464739200000.0, 
        "date" : 1464739200000.0, 
        "datejs" : ISODate("2016-06-01T00:00:00.000+0000"), 
        "datetimejs" : ISODate("2016-06-01T00:00:00.000+0000"), 
        "month" : NumberInt(5), 
        "year" : NumberInt(2016), 
        "day" : NumberInt(1)
    }, 
    "user" : {
        "promoter_id" : NumberInt(19), 
        "promoter_name" : "Hira Singh Pawar", 
        "empcode" : "519230"
    }, 
    "counter" : {
        "store_id" : NumberInt(4), 
        "store_name" : "Maya Sales ", 
        "chain_type" : "BS", 
        "address" : "6  Filamingo Market , Hissar", 
        "city" : "Hissar", 
        "state" : "Faridabad", 
        "region" : "North", 
        "sap_code" : "N_Far_91103948_1", 
        "unique_tp_code" : "91103948", 
        "location" : "6"
    }, 
    "insertedon" : {
        "date" : 1464739200000.0, 
        "datejs" : ISODate("2016-06-01T00:00:00.000+0000"), 
        "datetimejs" : ISODate("2016-06-01T00:00:00.000+0000")
    }, 
    "insertedby" : "akshay", 
    "manager" : {
        "manager_id" : NumberInt(5943), 
        "manager_name" : "Sonu Singh"
    }, 
    "type" : "display", 
    "data" : {
        "brand" : "whirlpool", 
        "sku" : "60", 
        "model_name" : "Icemagic Fresh", 
        "sub_cat_name" : "DC", 
        "cat_name" : "Refrigerator", 
        "value" : NumberInt(1)
    }, 
    "IsDeleted" : false
}
我想应用聚合,我必须将其与
城市
地区
进行分组,如果该柜台出售了冰箱,我需要在结果中提供详细信息,例如,如果一个柜台出售了惠而浦公司的2台冰箱,我希望在结果中反映出来

计数器还可以销售洗衣机等其他物品。因此,如果他们已经销售了2台洗衣机,我希望得到
{washingMachine:2}
的结果

我尝试了所有方法,但这里似乎没有任何效果:

db.display_mop.aggregate( // Pipeline [ 
    // Stage 1 
    { $match: { "project_code":"whirlpool" } }, 

    // Stage 2 
    { 
        $group: { 
            _id: { 
                "userid": "$user.promoter_id", 
                "userName": "$user.promoter_name", 
                "usercode": "$user.empcode", 
                "storename": "$counter.store_name",
                "address": "$counter.address", 
                "city": "$counter.city", 
                "state": "$counter.state", 
                "region": "$counter.region" 
            } 
        } 
    }, 
], 
// Options 
{ allowDiskUse: true }

你试过什么吗?或者你只是想有人帮你做?请将您尝试过的内容放在下面,以便人们能够提供帮助。是的,我尝试过。下面是我尝试过的代码。我实际上是mongo的新手,但下面是我正在处理的代码。db.display_mop.aggregate(//Pipeline[//Stage 1{$match:{“project_code”:“whirlpool”},//Stage 2{$group:{{id:{“userid:{”userid:“$user.promotor_id”,“用户名”:“$user.promotor\u name”,“usercode”:“$user.empcode”,“storename”:“$counter.store\u name”,“address”:“$counter.address”,“city”:“$counter.city”,“state”:“$counter.state”,“region”:“$counter.region”}},],//选项{allowDiskUse:true}那么,每个文档都代表一个售出的对象?我猜你想按州、地区、国家分组,并用售出对象的数量进行计数?根据你的说法,最终文档应该是什么样子?它应该是数据库中的数据,但如果该计数器售出了一台惠而浦冰箱,那么结果应该是惠而浦和t计数器已售出的数量。