【发布时间】:2021-04-28 07:47:04
【问题描述】:
我有 2 个收藏 -
学生合集(学生文档样本)
{
'id': '123',
'name': 'john',
'age': 25,
'fav_colors': ['red', 'black'],
'marks_in_subjects': [
{
'marks': 90,
'subject_id': 'abc'
},
{
'marks': 92,
'subject_id': 'def'
}
]
}
主题集合(2 个示例文档)
{
'id': 'abc',
'name': 'math'
},
{
'id': 'def',
'name': 'physics'
}
当我查询 id: '123' 的学生文档时,我希望结果输出为:
{
'id': '123',
'name': 'john',
'age': 25,
'fav_colors': ['red', 'black'],
'marks_in_subjects': [
{
'marks': 90,
'subject_id': 'abc',
'subject_name': 'math'
},
{
'marks': 92,
'subject_id': 'def',
'subject_name': 'physics'
}
]
}
现在,我阅读了 MongoDB 聚合管道和操作符文档,但我仍然不知道如何实现这一点。疑问仍然存在,因为我什至不确定这是否可以在 mongo 聚合管道的帮助下实现,因为 JOIN 发生在学生文档中数组字段的每个元素的此处。
如果有人可以在这里提供帮助,那将非常有帮助。谢谢
【问题讨论】:
标签: mongodb join aggregation-framework