$addToSet - 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.

$addToSet

El $addToSet operador de Amazon DocumentDB se utiliza para añadir un valor a una matriz solo si el valor aún no está presente en la matriz. Esto resulta útil para garantizar que una matriz contenga elementos únicos.

Parámetros

  • field: el campo que se va a actualizar.

  • value: el valor que se va a añadir al campo de matriz. Puede ser un valor único o una expresión.

Ejemplo (MongoDB Shell)

El siguiente ejemplo muestra cómo utilizar el $addToSet operador para añadir elementos únicos a una matriz.

Cree documentos de muestra

db.products.insertMany([ { "_id": 1, "item": "apple", "tags": ["fruit", "red", "round"] }, { "_id": 2, "item": "banana", "tags": ["fruit", "yellow"] }, { "_id": 3, "item": "cherry", "tags": ["fruit", "red"] } ])

Ejemplo de consulta

db.products.update( { "item": "apple" }, { $addToSet: { "tags": "green" } } )

Salida

{ "_id": 1, "item": "apple", "tags": ["fruit", "red", "round", "green"] }

En este ejemplo, el $addToSet operador añade la etiqueta «verde» a la matriz de «etiquetas» del documento, donde el campo «elemento» es «manzana». Como la palabra «verde» aún no estaba en la matriz, se agregó.

Ejemplos de código

Para ver un ejemplo de código para usar el $addToSet comando, elija la pestaña correspondiente al idioma que desee usar:

Node.js
const { MongoClient } = require('mongodb'); async function example() { 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 collection = db.collection('products'); await collection.updateOne( { "item": "apple" }, { $addToSet: { "tags": "green" } } ); const updatedDoc = await collection.findOne({ "item": "apple" }); console.log(updatedDoc); await client.close(); } example();
Python
from pymongo import MongoClient def example(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client.test collection = db.products collection.update_one( {"item": "apple"}, {"$addToSet": {"tags": "green"}} ) updated_doc = collection.find_one({"item": "apple"}) print(updated_doc) client.close() example()