我该如何使用mongodb聚合管道来获得最终结果?
我有以下文件
{
"_id" : "aaa",
"Count" : 137.0
}
{
"_id" : "bbb",
"Count" : 11.0
}
{
"_id" : "ccc",
"Count" : 236.0
}
我需要将它们合并为一个看起来像这样的文档。
{
aaa: 137,
bbb: 11,
ccc: 236
}
谢谢!
答案 0 :(得分:1)
您可以使用以下汇总。
使用$arrayToObject
将具有值的数组转换为对象,然后使用$mergeObjects
将所有文档合并为单个文档。
$replaceRoot
以将搜索结果提升为最高排名。
db.colname.aggregate([
{"$group":{
"_id":null,
"results":{"$mergeObjects":{"$arrayToObject":[[["$_id","$Count"]]]}}
}},
{"$replaceRoot":{"newRoot":"$results"}}
])