Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
$addFields
L'$addFieldsétape du pipeline d'agrégation Amazon DocumentDB vous permet d'ajouter de nouveaux champs calculés aux documents. Cela peut être utile pour ajouter des données dérivées ou transformées aux documents.
Paramètres
-
newField: nom du nouveau champ à ajouter. -
expression: expression qui correspond à la valeur du nouveau champ.
Exemple (MongoDB Shell)
L'exemple suivant montre comment $addFields ajouter un nouveau champ TotalInventory qui calcule l'inventaire total en fonction des Inventory.OrderQnty champs Inventory.OnHand et.
Création d'exemples de documents
db.example.insertMany([ { "Item": "Spray Paint", "Colors": ["Black", "Red", "Green", "Blue"], "Inventory": { "OnHand": 47, "MinOnHand": 50, "OrderQnty": 36 }, "UnitPrice": 3.99 }, { "Item": "Ruler", "Colors": ["Red", "Green", "Blue", "Clear", "Yellow"], "Inventory": { "OnHand": 47, "MinOnHand": 40 }, "UnitPrice": 0.89 } ]);
Exemple de requête
db.example.aggregate([ { $addFields: { TotalInventory: { $add: ["$Inventory.OnHand", "$Inventory.OrderQnty"] } } } ])
Sortie
[
{
"_id" : ObjectId("5bedafbcf65ff161707de24f"),
"Item" : "Ruler",
"Colors" : [ "Red", "Green", "Blue", "Clear", "Yellow" ],
"Inventory" : {
"OnHand" : 47,
"MinOnHand" : 40
},
"UnitPrice" : 0.89,
"TotalInventory" : 47
},
{
"_id" : ObjectId("5bedafbcf65ff161707de250"),
"Item" : "Spray Paint",
"Colors" : [ "Black", "Red", "Green", "Blue" ],
"Inventory" : {
"OnHand" : 47,
"MinOnHand" : 50,
"OrderQnty" : 36
},
"UnitPrice" : 3.99,
"TotalInventory" : 83
}
]
Exemples de code
Pour afficher un exemple de code d'utilisation de la $addFields commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :