кодесурса
«MongoDB

Оператор обновления массива MongoDB - $ pull

script1adsense2code
script1adsense3code

Описание

В MongoDB оператор $ pull используется для удаления всех экземпляров значения из существующего массива.

Синтаксис:

 db.collection.update ({поле: <запрос>}, {$ pull: {поле: <запрос>}}); 

Параметры:

название Описание
поле имя столбца или поля документа.
запрос Это выражение или условие.

Образец коллекции "Студент"

{
        "_id" : 1,
        "sem" : 1,
        "subjects" : [
                "phys",
                "chem",
                "maths",
                "gkn",
                "stat",
                "astro"
        ],
        "achieve" : [
                70,
                87,
                90,
                90,
                65,
                81
        ]
}

Пример оператора MongoDB $ pull

Если мы хотим , чтобы удалить элемент «математику» из субъектов поля массива для любого экземпляра в этом массиве «математика», следующий MongoDB может быть использована команда -

> db.student.update( { "subjects" : "maths" }, { $pull: { "subjects": "maths" }} );

Здесь в приведенном выше примере элемент "математика" в массиве предметов будет удален, потому что условие

Чтобы увидеть недавно обновленный документ -

> db.student.find().pretty();

Вывод команды:

 {
        "_id": 1,
        "достичь": [
                70,
                87,
                90,
                90,
                65,
                81
        ],
        "сем": 1,
        "предметы" : [
                "Phys",
                «Хим»,
                "GKN",
                «Стат»,
                «Астро»
        ]
}

Пример MongoDB $ pull для удаления всех вхождений

Если мы хотим , чтобы удалить все элементы 70 из поля массива для достижения любого экземпляра «GKN» в субъектах массива, следующие MongoDB может быть использована команда -

> db.student.update( { "subjects" : "gkn" }, { $pull: { "achieve": 90 }} );

Здесь в вышеприведенном примере все элементы 90 в массиве достигли для любого экземпляра "gkn" в субъектах массива.

Чтобы увидеть недавно обновленный документ -

> db.student.find().pretty();

Вывод команды:

 {
        "_id": 1,
        "достичь": [
                70,
                87,
                65,
                81
        ],
        "сем": 1,
        "предметы" : [
                "Phys",
                «Хим»,
                "математика",
                "GKN",
                «Стат»,
                «Астро»
        ]
}

Пример MongoDB $ pull с использованием оператора $ gte

Если мы хотим удалить все элементы, больше чем равные 85, из поля массива, достигнутого для любого экземпляра «gkn» в субъектах массива, можно использовать следующую команду mongodb:

> db.student.update( { "subjects" : "gkn" }, { $pull: { "achieve":{$gte :85} }});

Здесь , в приведенном выше примере все элементы больше , чем равное 85 в массиве достижения удалили для любого экземпляра «GKN» в субъектах массива.

Чтобы увидеть недавно обновленный документ -

> db.student.find().pretty();

Вывод команды:

 {
        "_id": 1,
        "достичь": [
                70,
                65,
                81
        ],
        "сем": 1,
        "предметы" : [
                "Phys",
                «Хим»,
                "математика",
                "GKN",
                «Стат»,
                «Астро»
        ]
}

Предыдущая: $ pop
Далее: $ pullAll

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code