我有一个包含以下文档的MongoDB集合:
{
"_id": ObjectId("..."),
"code": 22726,
"parent_code": 35481,
"parent_description": "posterdati",
},
{
"_id": ObjectId("..."),
"code": 22726,
"parent_code": 35484,
"parent_description": "vicesindaco",
},
{
"_id": ObjectId("..."),
"code": 22727,
"parent_code": 35487,
"parent_description": "prefettura",
}
我想使用“代码”字段将它们组合为_id,创建包含parent_code和parent_description的子文档数组:
{
"code": 22726,
parents: [
{
"parent_code": 35481,
"parent_description": "posterdati"
},
{
"parent_code": 35484,
"parent_description": "vicesindaco"
}
]
},
{
"code": 22727,
parents: [
{
"parent_code": 35487,
"parent_description": "prefettura"
}
]
}
是否可以仅使用聚合框架?我没有在聚合框架文档中看到对子文档的引用,所以我认为它不是......
大家好 .
1 回答
您可以使用以下聚合管道来实现所需的结果:
Output :