Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.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
Node.js 如何在mongoose中使用多于$group_Node.js_Mongodb_Mongoose - Fatal编程技术网

Node.js 如何在mongoose中使用多于$group

Node.js 如何在mongoose中使用多于$group,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,] 在上面的json响应中 如何将PracticeValue、StatusValue分组为单个函数 [ { "_id":"56569bff5fa4f203c503c792", "Status":{ "StatusID":2, "StatusObjID":"56559aad5fa4f21ca8492277", "StatusValue":"Closed" }, "OwnerPractice":{ "P

]

在上面的json响应中

如何将PracticeValue、StatusValue分组为单个函数

[

{
    "_id":"56569bff5fa4f203c503c792",
    "Status":{
        "StatusID":2,
        "StatusObjID":"56559aad5fa4f21ca8492277",
        "StatusValue":"Closed"
    },
    "OwnerPractice":{
        "PracticeObjID":"56559aad5fa4f21ca8492291",
        "PracticeValue":"CCC",
        "PracticeID":3
    },
    "Name":"AA"
},
{
    "_id":"56569bff5fa4f203c503c792",
    "Status":{
        "StatusID":2,
        "StatusObjID":"56559aad5fa4f21ca8492277",
        "StatusValue":"Open"
    },
    "OwnerPractice":{
        "PracticeObjID":"56559aad5fa4f21ca8492292",
        "PracticeValue":"K12",
        "PracticeID":2
    },
    "Name":"BB"
}
以下代码仅用于对StatusValue进行分组,请帮助如何使用相同功能对练习值进行分组

[

{
    "_id":"56569bff5fa4f203c503c792",
    "Status":{
        "StatusID":2,
        "StatusObjID":"56559aad5fa4f21ca8492277",
        "StatusValue":"Closed"
    },
    "OwnerPractice":{
        "PracticeObjID":"56559aad5fa4f21ca8492291",
        "PracticeValue":"CCC",
        "PracticeID":3
    },
    "Name":"AA"
},
{
    "_id":"56569bff5fa4f203c503c792",
    "Status":{
        "StatusID":2,
        "StatusObjID":"56559aad5fa4f21ca8492277",
        "StatusValue":"Open"
    },
    "OwnerPractice":{
        "PracticeObjID":"56559aad5fa4f21ca8492292",
        "PracticeValue":"K12",
        "PracticeID":2
    },
    "Name":"BB"
}
我的回答是

Opp.aggregate([
     {$group: {
         _id: '$Status.StatusValue',
         count: {$sum: 1}
     }}
], function (err, result) {
    res.send(result);
});

您可以按多个字段分组,如下所示:

[
    {
        "_id":"Deleted",
        "count":0
    },
    {
        "_id":"Open",
        "count":1
    },
    {
        "_id":"Closed",
        "count":1
    }
]


please help me, how to use more then $group function..

上面的代码没有得到预期的响应,计数值不正确我期待下面的响应格式,[{“Status”:[{“\u id”:“Deleted”,“count”:0},{“\u id”:“Open”,“count”:1},{“\u id”:“Closed”,“count”:1}]},{“Practice”:[{“\u id”:“K12”,“count”:31},{“\u id”:“HK”,“count”:12}]}]在这种情况下,您需要执行两个聚合查询