猫鼬更新查询-Mongoose / Mongodb

时间:2020-01-18 07:57:18

标签: mongodb mongoose

我有一个名为Student的集合,现在我想根据条件更新数组内的对象值。谁能帮我弄清楚这个逻辑。

学生:

{
_id: "5996d10e0b992e5def651db4"
name: "Siva"
mark:[
{subject:"Tamil",mark:"50"},
{subject:"English",mark:"25"},
{subject:"Science",mark:"25"},
]
__v: 36
}

预期结果: 我只想通过检查主题值来更新泰米尔语标记...

1 个答案:

答案 0 :(得分:1)

您可以使用位置运算符$更新子数组元素或对象,在您的示例中,它应该是这样的:

Student.update(
    { "mark.subject": "Tamil" },
    { "$set": { "mark.$.mark": "60" } }
)

您可以阅读更多文档here