1
私はこのようなモンゴルのコレクションにいくつかの文書を持っています。Mongo集計機能を使用して、ネストされたグループの合計と小計のパーセンテージを計算するにはどうすればよいですか?
{
"_id" : ObjectId("57e290087139be15d59408c1"),
"groupName" : "Registration",
"testCases" : [
{
"name" : "R1",
"browser" : "Chrome",
"status" : "passed"
},
{
"name" : "R1.1",
"browser" : "Chrome",
"status" : "passed"
},
{
"name" : "R2",
"browser" : "Chrome",
"status" : "passed"
},
{
"name" : "R3",
"browser" : "Chrome",
"status" : "passed"
},
{
"name" : "R4",
"browser" : "Chrome",
"status" : "passed"
},
{
"name" : "R1",
"browser" : "Firefox",
"status" : "passed"
},
{
"name" : "R2",
"browser" : "Firefox",
"status" : "passed"
},
{
"name" : "R3",
"browser" : "Firefox",
"status" : "passed"
},
{
"name" : "R4",
"browser" : "Firefox",
"status" : "failed"
}
]
}
{
"_id" : ObjectId("57e2903b7139be15d59408c2"),
"groupName" : "Checkout",
"testCases" : [
{
"name" : "C1",
"browser" : "Chrome",
"status" : "passed"
},
{
"name" : "C2",
"browser" : "Chrome",
"status" : "passed"
},
{
"name" : "C3",
"browser" : "Chrome",
"status" : "failed"
},
{
"name" : "C4",
"browser" : "Chrome",
"status" : "passed"
},
{
"name" : "C1",
"browser" : "Firefox",
"status" : "passed"
},
{
"name" : "C2",
"browser" : "Firefox",
"status" : "passed"
},
{
"name" : "C3",
"browser" : "Firefox",
"status" : "passed"
},
{
"name" : "C4",
"browser" : "Firefox",
"status" : "failed"
}
]
}
Mongoの集計機能を使用して、ネストされたグループの合計と小計のパーセンテージを計算するにはどうすればよいですか?
私は
例予想される出力として結果を出力期待してい:あなたは、次の集計操作を実行してみることができます
results: [
{
"groupName": "Registration",
"totalTests": 17,
"section": [
{ "name": "R1", "totalTests": 17, "sectionCount": 2 }
]
}
]
おかげChridamを。私は、$$ ROOT、$ push、$ firstのような集約関数の助けとなるキーワードはほとんどないことを知りませんでした。これに光を見せてくれてありがとう。 私のクエリは、100行以上のコードから40文字未満に縮小されました。 – Nirmal