mongodb - MongoDB - 使用聚合更新
问题描述
我在 MongoDB 中有两个集合,学生和教师。下面我贴了一些例子
- 学生
{
"_id" : ObjectId("60565eae82976271d1cbc9df"),
"nome" : "Giselle",
"idade" : 37,
"email" : "gigi@email.com",
"senha" : "segurança",
"cpf" : "875243087-36",
"disciplinas" : [
{
"nome" : "física",
"nota1" : 7,
"nota2" : 3,
"mediaFinal" : 5,
"professor" : "Carlos Aguiar"
},
{
"nome" : "português",
"nota1" : 9,
"nota2" : 9.5,
"mediaFinal" : 9.25,
"professor" : "Lourdes Silva"
}
]
}
- 教师
{
"_id" : ObjectId("60565eaf82976271d1cbc9e1"),
"nome" : "Lourdes Silva",
"idade" : 38,
"matricula" : 9751,
"formacao" : "Letras Português",
"disciplinas" : [
"português",
"literatura",
"redação"
]
}
{
"_id" : ObjectId("60565eaf82976271d1cbc9e2"),
"nome" : "Carlos Aguiar",
"idade" : 28,
"matricula" : 5472,
"formacao" : "Física",
"disciplinas" : [
"física"
]
}
我想用教师集合中的 _id 更新集合学生 disciplinas.professor。这个例子的预期结果应该是:
{
"_id" : ObjectId("60565eae82976271d1cbc9df"),
"nome" : "Giselle",
"idade" : 37,
"email" : "gigi@email.com",
"senha" : "segurança",
"cpf" : "875243087-36",
"disciplinas" : [
{
"nome" : "física",
"nota1" : 7,
"nota2" : 3,
"mediaFinal" : 5,
"professor" : ObjectId("60565eaf82976271d1cbc9e2")
},
{
"nome" : "português",
"nota1" : 9,
"nota2" : 9.5,
"mediaFinal" : 9.25,
"professor" : ObjectId("60565eaf82976271d1cbc9e1")
}
]
}
关于如何做到这一点的任何建议?欢迎举例。
谢谢你。
解决方案
推荐阅读
- postgresql - 以下查询的可能索引
- swift - 在 Swift 中打印奇数个数
- c++ - 创建一个具有两种可能继承的类
- arrays - ReactRedux 数组属性为空
- python - 在Python中将一对变量分配给两个变量的最小值/最大值
- python - message.content 到 json 文件 python discord bot
- c++ - 无法使用列表列表找出重载的构造函数
- javascript - 如何在 AngularJS 中使用 Highcharts
- laravel-5 - 获取一个类别中的所有类别和项目 - laravel 5
- javascript - 选择 h1 内的文本 - javascript