我有一个mongodb文档在以下格式。如何根据父属性_id更新数组中第一个元素的rolename字段。
{
_id: 1,
abc: [
{
roleid: 100,
rolname: "xyz role"
}
]
}
您可以像这样使用位置运算符($
):
db.collection.update({
"abc.rolname": "xyz role"
},
{
"$set": {
"abc.$.rolname": "new rolename"
}
})
例子
db.collections.updateOne(
{ _id: 1 },
{ $set: { 'abc.$.rolename': 'new value' } }
);