Arrays 嵌套对象内数组对象的更新字段

Arrays 嵌套对象内数组对象的更新字段,arrays,mongodb,Arrays,Mongodb,我有以下用户数据库集合 [{ name : "abc", obj:{ id : 123 , arr[{fid:"a123",field:"0"},{fid:"b123",field:"0"}]} }, { name : "pqr", obj:{ id : 456 , arr[{fid:"a456",field:"0"},{fid:"b456",field:"0"}]} }] 我想在mongodb中将fid:b456的字段值更新为1。 如何为相同的编写查询您尝试过什么吗? 也许这可以帮助你:

我有以下用户数据库集合

[{
name : "abc",
obj:{ id : 123 , arr[{fid:"a123",field:"0"},{fid:"b123",field:"0"}]}
},
{
name : "pqr",
obj:{ id : 456 , arr[{fid:"a456",field:"0"},{fid:"b456",field:"0"}]}

}]
我想在mongodb中将fid:b456的字段值更新为1。 如何为相同的

编写查询您尝试过什么吗? 也许这可以帮助你:

db.users.update({name:"pqr"},{$set: {"obj.arr[1].fid":"1"}})
有关更多信息,请查看此处

使用$

db.users.update({obj.arr.fid:"b456"},{$set: {"obj.arr.$.field":"1"}})
您可以按以下方式进行操作:

db.users.update({"obj.arr.fid": b456 }, {$set: { "obj.arr.$.fid": 1 }})
位置$operator充当第一个元素的占位符 与查询文档匹配的