現在我使用這個命令:
restos.aggregate([{$unwind:"$categories"},
{$group:{_id:'$categories.title', count:{$sum:1}}},
{$project:{ type:"$_id", count: 1,_id:0}}])
它輸出我這樣的資料:
{ "count" : 3, "type" : "Sandwiches" }
我想要的是這個:
{ "Sandwiches" : 3 }
我怎樣才能做到這一點?我在 pymongo 中使用 python,我需要手動格式化嗎?
謝謝
uj5u.com熱心網友回復:
您可以使用$replaceRoot和$arrayToObject將階段添加到聚合中,如下所示:
{
"$replaceRoot": {
"newRoot": {
"$arrayToObject": [
[
{
"k": "$type",
"v": "$count"
}
]
]
}
}
}
示例在這里
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/339361.html
