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.
$ WURZEL
Der $ROOT Operator in Amazon DocumentDB wird verwendet, um auf das gesamte Eingabedokument innerhalb einer Aggregationspipeline zu verweisen. Damit können Sie auf das gesamte Dokument zugreifen und es bearbeiten, einschließlich all seiner verschachtelten Felder und Strukturen.
Parameter
Keine
Beispiel (MongoDB Shell)
Dieses Beispiel zeigt, wie $ROOT Sie ein Prüfprotokoll erstellen können, das das vollständige Originaldokument zusammen mit Metadaten darüber, wann es verarbeitet wurde, erfasst.
Erstellen Sie Beispieldokumente
db.orders.insertMany([ { _id: 1, orderId: "ORD-2024-001", customer: "María García", email: "maría@example.com", items: [ { product: "Laptop", quantity: 1, price: 1299.99 } ], totalAmount: 1299.99 }, { _id: 2, orderId: "ORD-2024-002", customer: "Arnav Desai", email: "arnav@example.com", items: [ { product: "Mouse", quantity: 2, price: 29.99 }, { product: "Keyboard", quantity: 1, price: 89.99 } ], totalAmount: 149.97 } ]);
Beispiel für eine Abfrage
db.orders.aggregate([ { $project: { processedAt: new Date(), originalDocument: "$$ROOT", summary: { $concat: [ "Order ", "$orderId", " for ", "$customer", " - Total: $", { $toString: "$totalAmount" } ] } } } ]);
Ausgabe
[
{
_id: 1,
processedAt: ISODate('2025-11-24T20:43:51.492Z'),
originalDocument: {
_id: 1,
orderId: 'ORD-2024-001',
customer: 'María García',
email: 'maría@example.com',
items: [ { product: 'Laptop', quantity: 1, price: 1299.99 } ],
totalAmount: 1299.99
},
summary: 'Order ORD-2024-001 for María García - Total: $1299.99'
},
{
_id: 2,
processedAt: ISODate('2025-11-24T20:43:51.492Z'),
originalDocument: {
_id: 2,
orderId: 'ORD-2024-002',
customer: 'Arnav Desai',
email: 'arnav@example.com',
items: [
{ product: 'Mouse', quantity: 2, price: 29.99 },
{ product: 'Keyboard', quantity: 1, price: 89.99 }
],
totalAmount: 149.97
},
summary: 'Order ORD-2024-002 for Arnav Desai - Total: $149.97'
}
]
Codebeispiele
Um ein Codebeispiel für die Verwendung des $ROOT Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten: