$pull - Amazon DocumentDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

$pull

Der $pull Operator wird verwendet, um alle Instanzen eines Werts oder von Werten, die einer bestimmten Bedingung entsprechen, aus einem Array zu entfernen. Dieser Operator ist nützlich, wenn Sie bestimmte Elemente aus einem Array-Feld innerhalb eines Dokuments entfernen müssen.

Parameter

  • field: Der Name des Array-Feldes, aus dem die Werte entfernt werden sollen.

  • value: Der Wert oder die Bedingung, die bestimmt, welche Elemente aus dem Array entfernt werden sollen.

Beispiel (MongoDB Shell)

Das folgende Beispiel zeigt, wie der $pull Operator verwendet wird, um Elemente aus einem Array-Feld zu entfernen.

Erstellen Sie Beispieldokumente

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

Beispiel für eine Abfrage

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

Ausgabe

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

Die obige Abfrage entfernt die Funktion „Mitnehmen“ aus allen Dokumenten, in denen das cuisine Feld „Italienisch“ ist.

Codebeispiele

Um ein Codebeispiel für die Verwendung des $pull Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten:

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()