![](/img/trans.png)
[英]How to push array elements as each in nested array in mongodb using nodejs
[英]Updating nested array elements in mongodb using NodeJS
我想知道如何在MongoDB中访问嵌套数组元素,例如,如果我们有以下内容:
{
array1 : [
{
array11 : {
name11 : "xyz"
}
},{
array12 : {
name12: "abc",
nums : [1,2,3,4]
}
}
]
}
现在,我如何访问和更新“ name12”字段。 以及如何向“ nums”字段添加元素。
A)查找集合:我假设您要查找name12 =“ abc”。
db.mydata.find({"array1.array12.name12":"abc"}).pretty()
B)要更新和添加元素到nums数组,请使用位置运算符:
https://docs.mongodb.com/manual/reference/operator/update/positional/
db.mydata.update({"array1.array12.name12":"abc"},
{$set:{"array1.$.name12":"abc"} ,
$push:{"array1.$.nums":5}
})
附带说明,您应该考虑重新定义架构,以使数组具有相似的结构。 从长远来看,它将帮助您进行更新。
您可以像访问任何传统js数组一样访问它,在这种情况下,您访问数组中的对象时要注意语法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.