Удаление объекта из массива. MongoDB
Есть следующая коллекция
{
"_id": 0,
"title": "A blog post",
"comments": [
{},
{
"name": "joe",
"email": "[email protected]",
"content": "how you doin?)))"
}
]
}
Нужно удалить первый пустой объект в массиве "comments"
Ответы (1 шт):
Автор решения: Tema K
→ Ссылка
Удалить все пустые объекты в массиве в первом найденном документе:
db.items.update(
{
"comments":{}
},
{
"$pull": {
"comments": { $in:[{}] }
}
})
Удалить первый пустой объект в массиве в первом найденном документе:
db.items.update(
{
"comments.0":{}
},
{
"$pop": { "comments": -1 }
})
Чтобы удалить во всех документах, нужно добавить третий параметр:
{ "multi": true }