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.
$elemMatch
Der $elemMatch Operator in Amazon DocumentDB wird verwendet, um ein Array-Feld abzufragen und Dokumente zurückzugeben, bei denen mindestens ein Element im Array den angegebenen Kriterien entspricht. Dieser Operator ist besonders nützlich, wenn Sie komplexe Datenstrukturen mit verschachtelten Arrays oder eingebetteten Dokumenten haben.
Planner Version 2.0 fügte Indexunterstützung für hinzu. $elemMatch
Parameter
-
field: Das abzufragende Array-Feld. -
query: Die Kriterien, die mit den Array-Elementen verglichen werden sollen.
Verwendung $elemMatch innerhalb eines $all Ausdrucks
Einschränkungen in Bezug auf die Verwendung des $elemMatch Operators innerhalb eines $all Ausdrucks finden $elemMatchVerwendung innerhalb eines Ausdrucks $all Sie unter.
Beispiel (MongoDB Shell)
Das folgende Beispiel zeigt, wie der $elemMatch Operator verwendet wird, um Dokumente zu finden, bei denen das parts Array mindestens ein Element enthält, das den angegebenen Kriterien entspricht.
Erstellen Sie Beispieldokumente
db.col.insertMany([ { _id: 1, parts: [{ part: "xyz", qty: 10 }, { part: "abc", qty: 20 }] }, { _id: 2, parts: [{ part: "xyz", qty: 5 }, { part: "abc", qty: 10 }] }, { _id: 3, parts: [{ part: "xyz", qty: 15 }, { part: "abc", qty: 100 }] }, { _id: 4, parts: [{ part: "abc", qty: 150 }] } ]);
Beispiel für eine Abfrage
db.col.find({ parts: { "$elemMatch": { part: "xyz", qty: { $lt: 11 } } } })
Ausgabe
{ "_id" : 1, "parts" : [ { "part" : "xyz", "qty" : 10 }, { "part" : "abc", "qty" : 20 } ] }
{ "_id" : 2, "parts" : [ { "part" : "xyz", "qty" : 5 }, { "part" : "abc", "qty" : 10 } ] }
Codebeispiele
Um ein Codebeispiel für die Verwendung des $elemMatch Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten: