2016-12-02 52 views
1

我的收藏结构MongoDB中

{ 
     "companyName": "iAssure", 
     "companyDepartment": [ 
      { 
       "Department": "IT", 
       "companysubDepartment": [ 
        "HR", 
        "Finance", 
        "Account" 
       ] 
      }, 
      { 
       "Department": "Production", 
       "companysubDepartment": [ 
        "Raw Material", 
        "Quality" 
       ] 
      } 
     ] 
    } 

我想从companysubDepartment删除HR其中部是IT

+0

是没有尝试过任何事情吗? – Yogesh

+0

是的。我试过这个查询 db.companySettings.update({'_ id':“9uvjCujcjSbbLYi86”},{'companyDepartment':{$ elemMatch:{'Department':“IT”}}},{$ pull:{'companysubDepartment' : “HR”});但它只返回匹配:1不删除元素 –

回答

0

你错过了更新$ operator对象的数组中删除数组中的元素。

检查以下查询:

db.companySettings.update({'_id':"9uvjCujcjSbbLYi86","companyDepartment": 
          {"$elemMatch":{"Department":"IT"}}}, 
          {"$pull":{"companyDepartment.$.companysubDepartment":"HR"}}) 
+0

非常感谢。这项工作对我来说 –

+0

** [我应该怎么做当有人回答我的问题?](http://stackoverflow.com/help/someone-answers)** – Yogesh

+0

它的强制性,我们有15个投票声誉。我没有15个声望 –