2013-05-07 5 views
0

У меня есть JSON документ какудаление контента из определенной коллекции

{ 
"branch": [ 
    { 
     "section": [ 
      { 
       "sub": "edc", 
       "time": "one hour", 
       "frequency": "3" 
      }, 
      { 
       "sub": "bee", 
       "time": "two hours", 
       "frequency": "4" 
      } 
     ] 
    }, 
    { 
     "section": [ 
      { 
       "sub": "ss", 
       "time": "one hour", 
       "frequency": "2" 
      }, 
      { 
       "sub": "ms", 
       "time": "two hours", 
       "frequency": "5" 
      } 
     ] 
    } 
] 

}

Теперь я хочу, чтобы удалить

{ 
    "sub": "edc", 
    "time": "one hour", 
    "frequency": "3" 
} 

использованием "sub":"edc" из следующей коллекции

I хотите, чтобы запрос выполнял изменения в mongo db

+0

Является 'branch' коллекции содержащие документы раздела? –

+0

"ветка" - это не коллекция. Вышеупомянутый json-документ находится в коллекции, например, «college» в mongo db. Я хочу обновить базу данных, где я мог бы удалить { «sub»: «edc», «время»: «один час», «частота»: «3» } следующее – user2189941

ответ

2

Вам нужно использовать $pull, хотя я не сделал это с вложенным массивом.

См http://docs.mongodb.org/manual/reference/operator/pull/

Что-то вроде: (но вы должны проверить его)

db.yourcoll.update({ "branch.section.sub": 'edu' }, { $pull: { "branch.section.sub": 'edu' } }) 

Это аналогичный вопрос:

How to remove an element from a doubly-nested array in a MongoDB document

Смежные вопросы