这是我的收藏(工人):
"type" : "Manager",
"employees" : [{
"name" : "bob"
"id" : 101
},{
"name" : "phil"
"id" : 102
},{
"name" : "bob"
"id" : 103
}]
首先:这不是一个数组,所以 $pullAll 将不起作用或其他数组命令。我想要做的就是:(1)在所有子文档中使用类型管理器搜索 id 101 的集合。(2) 如果“经理”子文档中存在 101 ,我想删除项目 103。
我已经在这个问题上倾注了两天的互联网,无法弄清楚。
我已经尝试过这个(以及许多其他变体):
db.workers.update( {"type":"Manager","employees.id":101},{$pull : {"employees.id" : {"id" : 103}}},false,true)