如何从mongodb中检索具有直接父文档的子文档?
我正在尝试从mongodb集合中筛选子文档。以及试图获取相应的直接父文档的子文档如何从mongodb中检索具有直接父文档的子文档?,mongodb,Mongodb,我正在尝试从mongodb集合中筛选子文档。以及试图获取相应的直接父文档的子文档 **My parent document:** { "id":"123", "source":"02", "child":{"id":"456"}} **My child document:** { "id":"456", "source":"01", "parent":{"id":"123"}} 如何动态获取子文档及其相应的父文档?有人能帮我吗…您可以使用聚合管道阶段对同一集合执行左外部联接(未分块)。给
**My parent document:**
{ "id":"123", "source":"02", "child":{"id":"456"}}
**My child document:**
{ "id":"456", "source":"01", "parent":{"id":"123"}}
如何动态获取子文档及其相应的父文档?有人能帮我吗…您可以使用聚合管道阶段对同一集合执行左外部联接(未分块)。给定示例文档,要检索父文档的子文档,请执行以下操作:
要从子文档检索父文档,请执行以下操作:
我还建议复习,尤其是:
db.collectionA.aggregate([
{"$match": {"child": {"$exists": 1} } },
{"$lookup":{
"from": "collectionA",
"localField": "id",
"foreignField": "parent.id",
"as": "children"}
}
]);
db.collectionA.aggregate([
{"$match": {"parent": {"$exists": 1} } },
{"$lookup":{
"from": "collectionA",
"localField": "id",
"foreignField": "child.id",
"as": "parent"}
}
]);