Arrays MongoDB-从阵列中提取多个对象

Arrays MongoDB-从阵列中提取多个对象,arrays,mongodb,Arrays,Mongodb,嗨,我正在尝试从一个数组中删除多个对象,看起来像这样 { "_id" : ObjectId("5a7da1bda21d5f3e8cf005b3"), "owner" : "1", "group_name" : "PAASCU Board", "group_members" : [ { "faculty_name"

嗨,我正在尝试从一个数组中删除多个对象,看起来像这样

{
"_id" : ObjectId("5a7da1bda21d5f3e8cf005b3"),
"owner" : "1",
"group_name" : "PAASCU Board",
"group_members" : [ 
    {
        "faculty_name" : "Cheska Dela Rosa",
        "faculty_number" : 2,
        "_id" : ObjectId("5a7da1bda21d5f3e8cf005b5")
    }, 
    {
        "faculty_name" : "Earl Sempio",
        "faculty_number" : 7323,
        "_id" : ObjectId("5a7da1bda21d5f3e8cf005b4")
    }, 
    {
        "faculty_number" : 203,
        "faculty_name" : "Sample",
        "_id" : ObjectId("5a7dbf7952bd150a94d83958")
    }, 
    {
        "faculty_number" : 8025,
        "faculty_name" : "Sample Postman",
        "_id" : ObjectId("5a7dc64a1cf5dd3d50167d53")
    }
],
"__v" : 0 }
当我使用带有此代码的移除单个对象时,它会起作用

db.getCollection('groups').update({_id: ObjectId("5a7da1bda21d5f3e8cf005b3")}, {$pull: {"group_members": {"faculty_number":8025}}})

但是如果我想删除多个具有不同编号的对象,该怎么办?我尝试使用
$each
方法,就像在数组中添加多个对象一样,但效果不佳。

使用
$in
操作符传递教员值列表,以从嵌入数组中删除文档。更多

试一试


工作完美!谢谢你!
db.groups.update(
  {"_id": ObjectId("5a7da1bda21d5f3e8cf005b3")},
  {"$pull":{"group_members":{"faculty_number":{$in:[8025,7323]}}}}
)