【发布时间】:2013-11-26 18:23:08
【问题描述】:
https://stackoverflow.com/questions/19154639/mongodb-complex-query-on-nested-array
MongoDB 2.2 - Updating Array Nested Document
MongoDb 2.6 是否可以进行这些更新??
详情
我在 MongoDb 中有一个文档,其结构类似于 .. NESTED ARRAY。我想将 $addToSet 放入 d:["x","y"] 以使其成为 d:["x","y","z"]。
我已经尝试过 $elemMatch 和 $.但它们只适用于单一级别的数组。
{
id:1,
a:[
{
id:2,
b:[
{
id:3,
c:[
{
id:4,
d:["x","y"]
},
{
id:5,
d:["p","q"]
}
]
},
{
id:13,
c:[
{
id:14,
d:["w","q"]
},
{
id:15,
d:["i","j"]
}
]
}
]
}
]
}
获取 d:["x","y","z"] 的查询将是什么,其中查询部分可能是 .. {id:1, "a.id":2, "a.b.id": 3, "a.b.c.id":4 } 或者可能正在使用 $elemMatch ?
要求
需要一个准确的更新查询来将d 更新为 d:["x","y","z"] ;
$addToSet 或任何其他运算符将“z”添加到匹配的 d:[]
问题:更新部分将如何将“$”替换为索引..
【问题讨论】:
-
你为什么要第二次发布这个问题。即使人们试图关闭它?
-
@naveen 您可能应该删除您之前的相同问题,但有 0 个答案...
-
好的,我已经关闭了副本..不知道我是怎么得到的..可能是因为我真的希望这个功能进入 MongoDb,据我说这是一个严重的不完整功能在 mongodb 2.4/2.2 中更新文档
标签: mongodb