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.
$switch
Neu ab Version 4.0.
Wird von Elastic Cluster nicht unterstützt.
Der $switch Operator ist ein Operator für bedingte Ausdrücke in Amazon DocumentDB, der es Ihnen ermöglicht, eine Liste von Groß- und Kleinschreibung auszuwerten und den Wert des ersten Falls zurückzugeben, der als wahr ausgewertet wird, oder einen Standardwert, wenn kein Groß-/Kleinschreibung wahr ist.
Parameter
-
branches: Ein Array von Dokumenten, von denen jedes ein Fallfeld hat, das den auszuwertenden booleschen Ausdruck enthält, und ein Thann-Feld, das den Wert enthält, der zurückgegeben werden soll, wenn der Groß-/Kleinschreibung wahr ist. -
default: (optional) Der Wert, der zurückgegeben werden soll, wenn keiner der Groß- und Kleinschreibung zutrifft.
Beispiel (MongoDB Shell)
Das folgende Beispiel zeigt, wie der $switch Operator verwendet wird, um die Versandkosten für eine Bestellung anhand der Gesamtsumme der Bestellung zu ermitteln.
Erstellen Sie Beispieldokumente
db.orders.insertMany([ { _id: 1, total: 50 }, { _id: 2, total: 150 }, { _id: 3, total: 250 } ]);
Beispiel für eine Abfrage
db.orders.aggregate([ { $project: { _id: 1, total: 1, shippingCost: { $switch: { branches: [ { case: { $lte: ["$total", 100] }, then: 5 }, { case: { $lte: ["$total", 200] }, then: 10 }, { case: { $gt: ["$total", 200] }, then: 15 } ], default: 0 } } } } ])
Ausgabe
[
{
"_id": 1,
"total": 50,
"shippingCost": 5
},
{
"_id": 2,
"total": 150,
"shippingCost": 10
},
{
"_id": 3,
"total": 250,
"shippingCost": 15
}
]
Codebeispiele
Um ein Codebeispiel für die Verwendung des $switch Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten: