mongoose对于嵌套数组的更新操作,要怎么操作
比如我现在的数据如下: { usID:‘123456’, data1:[ {_id:‘111’,val:‘哈哈哈’}, {_id:‘222’,val:‘嘿嘿嘿’}, … ], data2:[ {_id:‘333’,val:‘哈哈哈’}, {_id:‘444’,val:‘嘿嘿嘿’}, … ] }
如果我现在想替换data2里_id为333的那条数据里的val值,该怎么做
2 回复
跑去看了下文档,如下,建议有什么问题可以先查一查文档,基本上都可以解决问题
原数据
{
_id: 4,
grades: [
{ grade: 80, mean: 75, std: 8 },
{ grade: 85, mean: 90, std: 5 },
{ grade: 85, mean: 85, std: 8 }
]
}
更新代码
db.students.updateOne(
{ _id: 4, "grades.grade": 85 },
{ $set: { "grades.$.std" : 6 } }
)
@luozuzhu 谢谢,终于解决了