3
我的文件是這樣的:MongoDB聚合返回值作爲鍵的嵌套組?
{
"_id" : "Tvq579754r",
"Status" : "passed",
"Title" : "up08c",
"ProjectID" : "Tvq5p",
"Version" : "1.0.0",
"Platform" : "platform_x",
"METRIC_A" : 11114.85,
"METRIC_B" : 68.9,
"METRIC_C" : 65.35,
},
{
"_id" : "Tvq579755r",
"Status" : "passed",
"Title" : "up09c",
"ProjectID" : "Tvq5p",
"Version" : "1.0.0",
"Platform" : "platform_x",
"METRIC_A" : 21114.85,
"METRIC_B" : 168.9,
"METRIC_C" : 165.35,
},
{
"_id" : "Tvq579756r",
"Status" : "passed",
"Title" : "up09c",
"ProjectID" : "Tvq5p",
"Version" : "1.0.0",
"Platform" : "platform_x",
"METRIC_A" : 31114.85,
"METRIC_B" : 268.9,
"METRIC_C" : 265.35,
}
現在我沒有問題,分組和由ProjectID
,Version
,Platform
和Title
,但什麼分組讓我METRIC_
領域的$avg
和$sum
我想內完成聚合骨架(如果可能)是用於返回使用分組值作爲鍵,諸如對象:
{
<Project ID> : {
<Version> : {
<Platform> : {
<Title> : {
"METRIC_A": <sum of METRIC_A>,
"METRIC_B": <sum of METRIC_B>,
"METRIC_C": <sum of METRIC_C>,
}
}
}
}
}
或者,在我的例子的情況下:
{
'Tvq5p' : {
'1.0.0' : {
'platform_x' : {
'up08c' : {
"METRIC_A": 11114.85,
"METRIC_B": 68.9,
"METRIC_C": 65.35,
},
'up09c' : {
"METRIC_A": 52229.7,
"METRIC_B": 437.8,
"METRIC_C": 430.7,
}
}
}
}
}
我目前做一次查詢結果由消費服務,這是不是非常慢或任何接收,但是我只是認爲這將是很好的來了,是這樣直接從Mongo開始。這甚至有可能嗎?
謝謝。
有一個功能請求,以允許這發生在$項目階段,請投它! https://jira.mongodb.org/browse/SERVER-5947 – 2013-09-01 20:41:52