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

$mergeObjects

Der $mergeObjects Operator in Amazon DocumentDB wird verwendet, um mehrere Dokumente oder Objekte zu einem einzigen Dokument zu kombinieren. Dieser Operator ist besonders nützlich, wenn Sie den Inhalt von zwei oder mehr Dokumenten oder Objekten zusammenführen müssen und dabei möglicherweise Werte aus einem Objekt mit denen eines anderen überschreiben müssen.

Parameter

  • expression1: Das erste Objekt, das zusammengeführt werden soll.

  • expression2: (optional) Das zweite Objekt, das zusammengeführt werden soll.

  • expression3: (optional) Zusätzliche Objekte, die zusammengeführt werden sollen.

Beispiel (MongoDB Shell)

Das folgende Beispiel zeigt, wie der $mergeObjects Operator verwendet wird, um zwei Objekte zu kombinieren.

Erstellen Sie Beispieldokumente

db.collection.insertMany([ { "_id": 1, "name": "John", "address": { "city": "New York", "state": "NY" } }, { "_id": 2, "name": "Jane", "address": { "city": "Los Angeles", "state": "CA" } } ]);

Beispiel für eine Abfrage

db.collection.aggregate([ { $project: { "combinedAddress": { $mergeObjects: ["$address", { "country": "USA" }] } } } ])

Ausgabe

[ { "_id": 1, "combinedAddress": { "city": "New York", "state": "NY", "country": "USA" } }, { "_id": 2, "combinedAddress": { "city": "Los Angeles", "state": "CA", "country": "USA" } } ]

Codebeispiele

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

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('collection'); const result = await collection.aggregate([ { $project: { "combinedAddress": { $mergeObjects: ["$address", { "country": "USA" }] } } } ]).toArray(); console.log(result); 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['collection'] result = list(collection.aggregate([ { '$project': { "combinedAddress": { "$mergeObjects": ["$address", { "country": "USA" }] } } } ])) print(result) client.close() example()