如何在mongodb中对总管道进行求和,平均和计数?

时间:2017-11-03 18:21:57

标签: mongodb mongoose

这是我的聚合函数返回输出

    [{
    "_id": "59fc28f93b65401d44d72b57",
    "company_id": 1,
    "company_name": "psoft",
    "company_address": [
        {
            "_id": "59fc2999df8f471dcca6c528",
            "company_address": "c1, #301, sector-6",
            "company_id": 1
        }
    ],
    "company_employee": [
        {
            "_id": "59fc2b81a37f9f18481a12b5",
            "salary": 42000,
            "company_id": 1,
            "employee_name": "uds",
        },
        {
            "_id": "59fc2b8ca37f9f18481a12b6",
            "salary": 40000,
            "company_id": 1,
            "employee_name": "udp",
        }
    ]
}]

如何对上述数据进行求和,平均,计数和返回?

这是我试过的查询:

db.collection('companies').aggregate([ 
     {
            $lookup:{
                from:'addresses',
                localField:'company_id',
                foreignField:'company_id',
                as:'company_address'
            },            
        },
    {            
           $unwind:"$company_address"
        },
        {                        
            $lookup:{
                from:'employees',
                localField:'company_id',
                foreignField:'company_id',
                as:'company_employee'                
            }                            
         }
        //  {
        //     $group: {
        //         _id:"$company_employee._id",
        //         "total": {
        //             $sum: "$company_employee.salary"
        //         }
        //     }
        // },

       //  it is not not working if you uncomment it  

    ],function(err,records){
        res.send(records);  // ok getting result 
        db.close();     
    }); 

没有取消注释上面的组部分,它给出结果但是我想要总和,平均也是

任何人都可以帮助我吗?

由于

0 个答案:

没有答案