Как удалить элементы массива на основе данных элемента массива в MongoDB - PullRequest
0 голосов
/ 17 сентября 2018

Как написать запрос Монго для удаления элементов массива, если он содержит конкретные данные?

{
    "_id": ObjectId("ajdi293akjf83rhfsf398"),
    "one": "oneData",
    "two": [
        {
         "_id":ObjectId("akjf82ijikfj83jkfkj3"),
         "value": 1
        },
        {
         "_id":ObjectId("akjf82ijikfj83jkfkj3"),
         "value": 2
        },
        {
         "_id":ObjectId("akjf82ijikfj83jkfkj3"),
         "value": 1
        }
        ]
}

Необходимо удалить элементы two, если элементы содержат value как 1

{
    "_id": ObjectId("ajdi293akjf83rhfsf398"),
    "one": "oneData",
    "two": [
        {
         "_id":ObjectId("akjf82ijikfj83jkfkj3"),
         "value": 2
        }
        ]
}

Скажите, пожалуйста, как этого добиться Большое спасибо заранее.

1 Ответ

0 голосов
/ 17 сентября 2018

Обновить команду с оператором $ pull .

Вы можете использовать:

    db.collection.update( {} ,
                          { $pull: {two : {value : 1} } },
                          { multi: true });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...