$pull - Amazon DocumentDB

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

$pull

El $pull operador se utiliza para eliminar de una matriz todas las instancias de un valor o valores que coincidan con una condición especificada. Este operador resulta útil cuando se necesitan eliminar elementos específicos de un campo matricial de un documento.

Parámetros

  • field: el nombre del campo de matriz del que se van a eliminar los valores.

  • value: el valor o la condición que determina los elementos que se van a eliminar de la matriz.

Ejemplo (MongoDB Shell)

En el siguiente ejemplo, se muestra cómo utilizar el $pull operador para eliminar elementos de un campo matricial.

Cree documentos de muestra

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"] } ])

Ejemplo de consulta

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

Salida

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

La consulta anterior elimina la función «Comida para llevar» de todos los documentos en los que el cuisine campo es «italiano».

Ejemplos de código

Para ver un ejemplo de código para usar el $pull comando, selecciona la pestaña correspondiente al idioma que deseas 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()