$pull - Amazon DocumentDB

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

$pull

O $pull operador é usado para remover de uma matriz todas as instâncias de um valor ou valores que correspondam a uma condição especificada. Esse operador é útil quando você precisa remover elementos específicos de um campo de matriz em um documento.

Parâmetros

  • field: o nome do campo de matriz do qual remover o (s) valor (es).

  • value: o valor ou condição que determina quais elementos devem ser removidos da matriz.

Exemplo (MongoDB Shell)

O exemplo a seguir demonstra como usar o $pull operador para remover elementos de um campo de matriz.

Crie documentos de amostra

db.restaurants.insertMany([ { name: "Pizza Hut", cuisine: "Italian", features: ["Delivery", "Takeout", "Dine-in"] }, { name: "Sushi Saito", cuisine: "Japanese", features: ["Dine-in", "Private Dining"] }, { name: "Taco Bell", cuisine: "Mexican", features: ["Delivery", "Takeout", "Drive-thru"] } ])

Exemplo de consulta

db.restaurants.updateMany( { cuisine: "Italian" }, { $pull: { features: "Takeout" } } )

Saída

{ "acknowledged" : true, "matchedCount" : 1, "modifiedCount" : 1 }

A consulta acima remove o recurso “Takeout” de todos os documentos em que o cuisine campo é “italiano”.

Exemplos de código

Para ver um exemplo de código para usar o $pull comando, escolha a guia do idioma que você deseja usar:

Node.js
const { MongoClient } = require('mongodb'); async function updateRestaurants() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); const db = client.db('test'); const restaurants = db.collection('restaurants'); await restaurants.updateMany( { cuisine: 'Italian' }, { $pull: { features: 'Takeout' } } ); const updatedRestaurants = await restaurants.find({}).toArray(); console.log(updatedRestaurants); await client.close(); } updateRestaurants();
Python
from pymongo import MongoClient def update_restaurants(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client.test restaurants = db.restaurants result = restaurants.update_many( { 'cuisine': 'Italian' }, { '$pull': { 'features': 'Takeout' } } ) updated_restaurants = list(restaurants.find({})) print(updated_restaurants) client.close() update_restaurants()