0
我是MongoDB的一位相對新手,並且幾天後我一直在爲這個問題而苦苦掙扎。對嵌套文檔進行分組
我已經做了很多嘗試,並閱讀所有可能的文檔&關於類似需求的問題,但我還沒有找到一個可能的解決方案。
我有如下記錄結構:
{ _id: ObjectId("1234"),
locationName: "fakeaccount",
timeZone: "Europe/Rome",
metricValues: [
{
metric: "QUERIES_DIRECT",
totalValue: {
metricOption: "AGGREGATED_TOTAL",
timeDimension: {
timeRange: {
startTime: "2016-01-01T00:00:00Z",
endTime: "2016-01-03T00:00:00Z"
}
},
value: "0"
},
dimensionalValues: [
{
metricOption: "AGGREGATED_DAILY",
timeDimension: {
timeRange: {
startTime: "2016-01-01T23:00:00Z"
}
},
value: "0"
},
{
metricOption: "AGGREGATED_DAILY",
timeDimension: {
timeRange: {
startTime: "2016-01-02T23:00:00Z"
}
},
value: "1"
}
]
},
{
metric: "QUERIES_INDIRECT",
totalValue: {
metricOption: "AGGREGATED_TOTAL",
timeDimension: {
timeRange: {
startTime: "2016-01-01T00:00:00Z",
endTime: "2016-01-03T00:00:00Z"
}
},
value: "0"
},
dimensionalValues: [
{
metricOption: "AGGREGATED_DAILY",
timeDimension: {
timeRange: {
startTime: "2016-01-01T23:00:00Z"
}
},
value: "2"
},
{
metricOption: "AGGREGATED_DAILY",
timeDimension: {
timeRange: {
startTime: "2016-01-02T23:00:00Z"
}
},
value: "1"
}
]
}
}
] }
我想獲得的,其中字段metricValues.dimensionalValues.value
被metricValues.dimensionalValues.timeDimension.timeRange.startTime
分組,然後由metricValues.metric
輸出文檔。
預期JSON輸出:
[{
"startTime": "2016-01-01T00:00:00Z",
"metrics": {
"QUERIES_DIRECT": {
"value": 0
},
"QUERIES_INDIRECT": {
"value": 1
}
}
},
{
"startTime": "2016-01-02T00:00:00Z",
"metrics": {
"QUERIES_DIRECT": {
"value": 2
},
"QUERIES_INDIRECT": {
"value": 1
}
}
}]