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.
Verweisen auf Elementattribute bei der Verwendung von Ausdrücken in DynamoDB
Dieser Abschnitt beschreibt, wie Sie sich auf die Elementattribute in einem Ausdruck in Amazon DynamoDB beziehen können. Sie können mit jedem beliebigen Attribut arbeiten, auch wenn es tief innerhalb mehrerer Listen und Zuordnungen verschachtelt ist.
Ein Beispielartikel: ProductCatalog
Die Beispiele auf dieser Seite verwenden das folgende Beispielelement in der ProductCatalog
Tabelle. (Diese Tabelle wird in Beispieltabellen und -daten zur Verwendung in DynamoDB beschrieben.)
{ "Id": 123, "Title": "Bicycle 123", "Description": "123 description", "BicycleType": "Hybrid", "Brand": "Brand-Company C", "Price": 500, "Color": ["Red", "Black"], "ProductCategory": "Bicycle", "InStock": true, "QuantityOnHand": null, "RelatedItems": [ 341, 472, 649 ], "Pictures": { "FrontView": "http://example.com/products/123_front.jpg", "RearView": "http://example.com/products/123_rear.jpg", "SideView": "http://example.com/products/123_left_side.jpg" }, "ProductReviews": { "FiveStar": [ "Excellent! Can't recommend it highly enough! Buy it!", "Do yourself a favor and buy this." ], "OneStar": [ "Terrible product! Do not buy this." ] }, "Comment": "This product sells out quickly during the summer", "Safety.Warning": "Always wear a helmet" }
Beachten Sie Folgendes:
-
Der Partitions-Schlüsselwert (
Id
) ist123
. Es gibt keinen Sortierschlüssel. -
Die meisten Attribute verfügen über skalare Datentypen, z. B.
String
,Number
,Boolean
undNull
. -
Ein Attribut (
Color
) ist einString Set
. -
Die folgenden Attribute sind Dokumentdatentypen:
-
Eine Liste von
RelatedItems
. Jedes Element ist eineId
für ein zugehöriges Produkt. -
Eine Zuordnung von
Pictures
. Jedes Element ist eine kurze Beschreibung eines Bilds zusammen mit einer URL für die entsprechende Bilddatei. -
Eine Zuordnung von
ProductReviews
. Jedes Element repräsentiert eine Bewertung und eine Liste von Rezensionen dieser Bewertung. Zunächst wird diese Zuordnung mit 5-Sterne- und 1-Stern-Rezensionen gefüllt.
-
Attribute der obersten Stufe
Ein Attribut befindet sich auf oberster Ebene, wenn es nicht in einem anderen Attribut eingebettet ist. Für das ProductCatalog
-Element lauten die Attribute auf oberster Ebene wie folgt:
-
Id
-
Title
-
Description
-
BicycleType
-
Brand
-
Price
-
Color
-
ProductCategory
-
InStock
-
QuantityOnHand
-
RelatedItems
-
Pictures
-
ProductReviews
-
Comment
-
Safety.Warning
Alle diese Attribute auf oberster Ebene sind Skalare, mit Ausnahme von Color
(Liste), RelatedItems
(Liste), Pictures
(Zuordnung) und ProductReviews
(Zuordnung).
Verschachtelte Attribute
Ein Attribut gilt als verschachtelt, wenn es in einem anderen Attribut eingebettet ist. Um auf das verschachtelte Attribut zuzugreifen, verwenden Sie die Dereferenzierungsoperatoren:
-
[n]
– für Listenelemente -
.
(Punkt) – für Zuordnungselemente
Zugriff auf Listenelemente
Der Dereferenzierungsoperator für das Listenelement ist [N], wobei n die Elementnummer ist. Listenelemente sind nullbasiert, sodass [0] das erste Element in der Liste darstellt, [1] das zweite und so weiter. Hier sind einige Beispiele:
-
MyList[0]
-
AnotherList[12]
-
ThisList[5][11]
Das Element ThisList[5]
ist selbst eine verschachtelte Liste. Daher bezieht sich ThisList[5][11]
auf das zwölfte Element in dieser Liste.
Die Zahl innerhalb der eckigen Klammern muss eine nicht negative ganze Zahl sein. Daher sind die folgenden Ausdrücke ungültig:
-
MyList[-1]
-
MyList[0.4]
Zugriff auf Zuweisungselemente
Der Dereferenzierungsoperator für ein Zuordnungselement ist . (Punkt). Verwenden Sie einen Punkt als Trennzeichen zwischen den Elementen in einer Zuordnung:
-
MyMap.nestedField
-
MyMap.nestedField.deeplyNestedField
Dokumentpfade
In einem Ausdruck verwenden Sie einen Dokumentpfad, um DynamoDB mitzuteilen, wo ein Attribut zu finden ist. Für eine Attribut auf oberster Ebene ist der Dokumentpfad einfach der Attributname. Sie erstellen den Dokumentpfad für ein verschachteltes Attribut mithilfe des Dereferenzoperators.
Es folgen einige Beispiele für Dokumentpfade. (Beziehen Sie sich auf das Element, das in Verweisen auf Elementattribute bei der Verwendung von Ausdrücken in DynamoDB gezeigt wird.)
-
Ein skalares Attribut auf oberster Ebene.
Description
-
Ein Listenattribut auf oberster Ebene. (Dies gibt die gesamte Liste zurück und nicht nur einige der Elemente.)
RelatedItems
-
Das dritte Element aus der
RelatedItems
-Liste. (Denken Sie daran, dass Listenelemente nullbasiert sind.)RelatedItems[2]
-
Das Bild des Produkts in der Vorderansicht
Pictures.FrontView
-
Alle 5-Sterne-Rezensionen
ProductReviews.FiveStar
-
Die erste 5-Sterne-Rezension
ProductReviews.FiveStar[0]
Anmerkung
Die maximale Tiefe eines Dokumentpfads ist 32. Aus diesem Grund kann die Anzahl der Dereferenzoperatoren in einem Pfad diesen Grenzwert nicht überschreiten.
Sie können jeden Attributnamen in einem Dokumentpfad verwenden, sofern er die folgenden Anforderungen erfüllt:
-
Der Attributname muss mit einem Rautenzeichen (#) beginnen
-
Das erste Zeichen ist
a-z
oderA-Z
und/oder0-9
. -
Das zweite Zeichen (falls vorhanden) ist
a-z
,A-Z
.
Anmerkung
Wenn ein Attributname diesen Anforderungen nicht entspricht, müssen Sie einen Ausdrucksattributnamen als Platzhalter definieren.
Weitere Informationen finden Sie unter Namen von Ausdrucksattributen (Aliase) in DynamoDB.