【发布时间】:2021-08-03 13:06:38
【问题描述】:
您好,我有两个集合人和部门。这些集合具有以下属性。
我想在文档的根目录中聚合并添加一个内部数组。请在下面检查我需要的结果:
人:
{
_id:ObjectID("5ff93b43535bera64de4"),
first_name: some name,
last_name : some name,
dept: department1,
}
部门:
{
dept_name: department1,
dept_descp : this is description,
books: [
{
book_name: book1,
subject: subject1,
},
{
book_name: book2,
subject: subject2,
},
]
}
到目前为止,我已经尝试过,但没有得到所需的结果
person.aggregate([
{
$match:
{
"_id": ObjectId("5ff93b43535bera64de4")
}
},
{
$lookup: {
from: "department",
localField: "dept",
foreignField: "dept_name",
as: "ndept"
}
},
{
$project:{"books": '$ndept.books'}
}
])
我想得到的结果是
结果:
{
_id:ObjectID("5ff93b43535bera64de4"),
first_name: some name,
last_name : some name,
dept: department1,
books: [
{
book_name: book1,
subject: subject1,
},
{
book_name: book2,
subject: subject2,
}
]
}
【问题讨论】:
标签: arrays mongodb mongodb-query aggregation-framework mongodb-lookup