我的文件看起來是這樣的:MongoDB中的聚合框架結合小組和項目
db.hourly.aggregate([
{$match: {timestamp : "2016-05-28"}},
{$unwind: "$price_information.hourly_rates"},
{$group: { _id: "$unique_item_identifier", total_price: { $avg: "$price_information.hourly_rates.price"}}}
]);
我與引進(投影)奮力其他PARAMS:
{
"_id" : ObjectId("5748d1e2498ea908d588b65e"),
"some_item" : {
"_id" : ObjectId("5693afb1b49eb7d5ed97de14"),
"item_property_1" : 1.0,
"item_property_2" : 2.0,
},
"timestamp" : "2016-05-28",
"price_information" : {
"arbitrary_value" : 111,
"hourly_rates" : [
{
"price" : 74.45,
"hour" : "0"
},
{
"price" : 74.45,
"hour" : "1"
},
{
"price" : 74.45,
"hour" : "2"
},
]
}
}
我做了平均通過每天的價格在結果集中。我想在結果集中也有some_item
和timestamp
。我試圖在查詢中使用$project: {some_item: 1, total_price: 1, ...}
,但那是不對的。
我所需的輸出會是這樣:
{
"_id" : ObjectId("5693afb1b49eb7d5ed97de27"),
"someItem" : {
"_id" : ObjectId("5693afb1b49eb7d5ed97de14"),
"item_property_1" : 1.0,
"item_property_2" : 2.0,
},
"timestamp" : "2016-05-28",
"price_information" : {
"avg_price": 34
}
}
如果有人可以給我一個提示,如何對項目的分組和其他PARAMS到結果集,我將感謝。
最佳 羅布
非常感謝!很高興知道,我必須將其納入其中。我不會那樣做的! –