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 如何将$setunion应用于此聚合?_Mongodb - Fatal编程技术网

Mongodb 如何将$setunion应用于此聚合?

Mongodb 如何将$setunion应用于此聚合?,mongodb,Mongodb,我需要按每个请求类型获取值,还需要isRequestSuccess:成功或失败 Here my db is: { "_id" : ObjectId("5d28667fb0adb622b905ccd2"), "requestedDate" : ISODate("2019-07-12T10:52:47.711Z"), "requestType" : "A", "isRequestSuccess" : false, "responseDate" : ISODa

我需要按每个请求类型获取值,还需要isRequestSuccess:成功或失败

Here my db is:

{
    "_id" : ObjectId("5d28667fb0adb622b905ccd2"),
    "requestedDate" : ISODate("2019-07-12T10:52:47.711Z"),
    "requestType" : "A",
    "isRequestSuccess" : false,
    "responseDate" : ISODate("2019-07-12T10:53:19.213Z"),
    "__v" : 0
},
{
    "_id" : ObjectId("5d28667fb0adb622b905ccd2"),
    "requestedDate" : ISODate("2019-07-12T10:52:47.711Z"),
    "requestType" : "C",
    "isRequestSuccess" : false,
    "responseDate" : ISODate("2019-07-12T10:53:19.213Z"),
    "__v" : 0
},
{
    "_id" : ObjectId("5d28667fb0adb622b905ccd2"),
    "requestedDate" : ISODate("2019-07-12T10:52:47.711Z"),
    "requestedType" : "A",
    "isRequestSuccess" : false,
    "responseDate" : ISODate("2019-07-12T10:53:19.213Z"),
    "__v" : 0
}

如何获取这些值?

请显示您的预期输出[{requestedType:'A',isRequestSuccess:2,isRequestFalse:1},{requestedType:'C',isRequestSuccess:1,isRequestFalse:3}]
[
  { requestedType: "A", isRequestSuccess: 2, isRequestFalse: 1 },
  { requestedType: "C", isRequestSuccess: 1, isRequestFalse: 3 }
]
db.getCollection('test').aggregate({
  "$group": {
      "_id": "$requestedType",
      "isRequestSuccess": {
          $sum: {
              $cond: ["$isRequestSuccess", 1, 0]
          }
      },
      "isRequestFalse": {
          $sum: {
              $cond: ["$isRequestSuccess", 0, 1]
          }
      }
  }
 })