Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Wichtige Bedingungsausdrücke für den Query-Vorgang in DynamoDB

Fokusmodus
Wichtige Bedingungsausdrücke für den Query-Vorgang in DynamoDB - Amazon-DynamoDB

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.

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.

Sie können alle Attributnamen in einem Schlüsselbedingungsausdruck verwenden, sofern das erste Zeichen a-z oder A-Z ist und die übrigen Zeichen (ab dem zweiten Zeichen, sofern vorhanden) a-z, A-Z oder 0-9 sind. Darüber hinaus müssen die Attributnamen nicht DynamoDB-reservierte Wörter sein. (Eine vollständige Liste finden Sie unter Reservierte Wörter in DynamoDB.) Wenn ein Attributname diesen Anforderungen nicht entspricht, müssen Sie einen Ausdruckattributnamen als Platzhalter definieren. Weitere Informationen finden Sie unter Namen von Ausdrucksattributen (Aliase) in DynamoDB.

Für Objekte, die mit einem bestimmten Partitionsschlüsselwert versehen sind, speichert DynamoDB diese Elemente nah beieinander, sortiert nach Sortierschlüsselwerten. In einer Query-Operation ruft DynamoDB die Elemente sortiert ab und verarbeitet dann die Elemente mit KeyConditionExpression und allen FilterExpression, die möglicherweise vorhanden sind. Nur dann werden die Query-Ergebnisse an den Client zurückgesendet.

Die Query-Operation gibt immer eine Ergebnismenge zurück. Wenn keine übereinstimmenden Elemente gefunden werden, ist die Ergebnismenge leer.

Query-Ergebnisse werden immer von dem Sortierschlüsselwert sortiert. Wenn der Datentyp des Sortierschlüssels als Number festgelegt ist, werden die Ergebnisse in der numerischen Reihenfolge zurückgegeben. Andernfalls werden die Ergebnisse in der Reihenfolge der UTF-8-Bytes zurückgegeben. Standardmäßig ist die Sortierreihenfolge aufsteigend. Um die Reihenfolge umzukehren, setzen Sie den Parameter ScanIndexForward auf false.

Eine einzelne Query-Operation kann bis zu 1 MB an Daten abrufen. Diese Größenbeschränkung gilt, bevor ein FilterExpression oder ProjectionExpression den Ergebnissen zugeordnet wird. Wenn LastEvaluatedKey in der Antwort vorhanden ist und nicht Null ist, müssen Sie die Ergebnismenge wechseln (siehe Paginieren von Tabellenabfrageergebnissen in DynamoDB).

Beispiele für wichtige Bedingungsausdrücke

Wenn Sie Suchkriterien angeben, verwenden Sie einen Schlüsselbedingungsausdruck – eine Zeichenkette, die die Elemente bestimmt, die von der Tabelle oder dem Index gelesen werden müssen.

Sie müssen den Namen und Wert des Partitionsschlüssels als Gleichheitsbedingung angeben. Sie können kein Nicht-Schlüssel-Attribut in einem Schlüsselbedingungsausdruck verwenden.

Sie können optional eine zweite Bedingung für den Sortierschlüssel (sofern vorhanden) angeben. Die Bedingung des Sortierschlüssels muss einen der folgenden Vergleichsoperatoren verwenden:

  • a = b— wahr, wenn a das Attribut dem Wert entspricht b

  • a < b— wahr, wenn a es kleiner ist als b

  • a <= b— wahr, wenn kleiner oder gleich a ist b

  • a > b— wahr, wenn größer a ist als b

  • a >= b— wahr, wenn größer oder gleich a ist b

  • a BETWEEN b AND c— wahr, wenn größer als oder gleich b und kleiner als oder gleich a istc.

Folgende Funktionen werden ebenfalls unterstützt:

  • begins_with (a, substr) – True, wenn der Wert von Attribut a mit einer bestimmten Teilkettenfolge beginnt.

Die folgenden Beispiele AWS Command Line Interface (AWS CLI) veranschaulichen die Verwendung von Ausdrücken für Schlüsselbedingungen. Diese Ausdrücke verwenden Platzhalter (z. B. :name und :sub) anstelle tatsächlicher Werte. Weitere Informationen erhalten Sie unter Namen von Ausdrucksattributen (Aliase) in DynamoDB und Verwenden von Ausdrucksattributwerten in DynamoDB.

Beispiel

Fragen Sie die Thread-Tabelle nach einem bestimmten ForumName (Partitionsschlüssel) ab. Alle Elemente mit diesem ForumName-Wert werden von der Abfrage gelesen, da der Sortierschlüssel (Subject) in KeyConditionExpression nicht enthalten ist.

aws dynamodb query \ --table-name Thread \ --key-condition-expression "ForumName = :name" \ --expression-attribute-values '{":name":{"S":"Amazon DynamoDB"}}'
Beispiel

Fragen Sie die Thread-Tabelle nach einem bestimmten ForumName (Partitions-Schlüssel) ab, aber dieses Mal geben Sie nur die Elemente mit einem bestimmten Subject (Sortierschlüssel) zurück.

aws dynamodb query \ --table-name Thread \ --key-condition-expression "ForumName = :name and Subject = :sub" \ --expression-attribute-values file://values.json

Die Argumente für --expression-attribute-values werden in der Datei values.json gespeichert:

{ ":name":{"S":"Amazon DynamoDB"}, ":sub":{"S":"DynamoDB Thread 1"} }
Beispiel

Fragen Sie die Reply-Tabelle nach einer bestimmten Id (Partitionsschlüssel) ab, aber geben Sie nur die Elemente zurück, deren ReplyDateTime (Sortierschlüssel) mit bestimmten Zeichen beginnt.

aws dynamodb query \ --table-name Reply \ --key-condition-expression "Id = :id and begins_with(ReplyDateTime, :dt)" \ --expression-attribute-values file://values.json

Die Argumente für --expression-attribute-values werden in der Datei values.json gespeichert:

{ ":id":{"S":"Amazon DynamoDB#DynamoDB Thread 1"}, ":dt":{"S":"2015-09"} }
DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.