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.
$zip
Der $zip Operator in Amazon DocumentDB ermöglicht es Ihnen, mehrere Arrays zu einem einzigen Array von Tupeln (Schlüssel-Wert-Paare) zu kombinieren. Dies ist nützlich, wenn Sie neue Dokumente oder Objekte erstellen müssen, indem Sie Daten aus verschiedenen Quellen oder Arrays innerhalb eines Dokuments kombinieren.
Parameter
-
inputs: Eine Reihe von Ausdrücken, die in Arrays aufgelöst werden. Diese Arrays werden zu einem einzigen Array von Tupeln kombiniert. -
useLongestLength: (optional) Fallstrue, hat das Ausgabe-Array die Länge des längsten Eingabe-Arrays und füllt kürzere Arrays mit Werten auf.nullFallsfalse, hat das Ausgabe-Array die Länge des kürzesten Eingabe-Arrays. -
defaults: (optional) Ein Array von Standardwerten, das für die Tupel verwendet werden soll, wenn das entsprechende Eingabearray kürzer als das längste EingabearrayuseLongestLengthist und es isttrue.
Beispiel (MongoDB Shell)
Das folgende Beispiel zeigt, wie der $zip Operator verwendet wird, um zwei Arrays zu einem einzigen Array von Tupeln zu kombinieren.
Erstellen Sie Beispieldokumente
db.grades.insert([ { "_id": 1, "name": "John", "scores": [90, 85, 92], "classes": ["Math", "English", "Science"] }, { "_id": 2, "name": "Jane", "scores": [88, 91, 90, 85], "classes": ["Math", "English", "Science", "History"] } ])
Beispiel für eine Abfrage
db.grades.aggregate([ { $project: { "name": 1, "scoredClasses": { $zip: { inputs: ["$scores", "$classes"], useLongestLength: true, defaults: [null, null] } } } } ])
Ausgabe
[
{
"_id": 1,
"name": "John",
"scoredClasses": [
[90, "Math"],
[85, "English"],
[92, "Science"],
[null, null]
]
},
{
"_id": 2,
"name": "Jane",
"scoredClasses": [
[88, "Math"],
[91, "English"],
[90, "Science"],
[85, "History"]
]
}
]
Codebeispiele
Um ein Codebeispiel für die Verwendung des $zip Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten: