MongoDB:删除嵌套数组中的第n个元素
我需要删除mongoDB文档中嵌套数组的第n个对象。在本例中,我想删除第二个MongoDB:删除嵌套数组中的第n个元素,mongodb,Mongodb,我需要删除mongoDB文档中嵌套数组的第n个对象。在本例中,我想删除第二个组元素中数据的第三个元素: { "_id" : "wLXDvjDvbsxzfxabR", "group" : [ { "title" : "title 1", "data" : [ { "note" : "text" }
组
元素中数据
的第三个元素:
{
"_id" : "wLXDvjDvbsxzfxabR",
"group" : [
{
"title" : "title 1",
"data" : [
{
"note" : "text"
}
]
},
{
"title" : "title 2",
"data" : [
{
"note 1" : "text"
},
{
"note 2" : "text"
},
{
"note 3" : "text"
}
]
}
]
}
所以我试了一下:
Collection.update(
{ _id: 'wLXDvjDvbsxzfxabR' },
{ $pull: "group.1.dosis.2" }
);
但这不起作用。我需要一个通用的解决方案来删除第I个数组的第n个元素…我相信它应该是这样的:
Collection.update(
{ _id: 'wLXDvjDvbsxzfxabR' },
{ $pull: {"group.1.data" : { "note 3" : "text } } }
);
但我不知道内容。我只想删除第n个元素。@user3142695您应该在问题中提到这一点。你说你想删除一个特定的元素,特别是第二个数组中的第三个元素。我想,这是误解。是的,我想删除第n个数组的第n个元素。示例是第二个数组的第三个元素。
n个数组的第n个元素。
==最后一个元素?我的意思是我需要选择要删除的元素。一般解决办法。所以我可以删除第二组的第一个元素,或者第二组的第二个元素,或者任何其他元素……所以你应该说第n个数组的第I个元素