

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.

# Wichtige Unterschiede zwischen einer relationalen (SQL) Datenbank und DynamoDB beim Lesen von Daten aus einer Tabelle
<a name="SQLtoNoSQL.ReadData"></a>

Mit SQL verwenden Sie die `SELECT`-Anweisung, um eine oder mehrere Zeilen aus einer Tabelle abzurufen. Sie verwenden die `WHERE`-Klausel, um die Daten zu bestimmen, die an Sie zurückgesendet werden.

Dies unterscheidet sich von der Verwendung von Amazon DynamoDB, das die folgenden Operationen zum Lesen von Daten bereitstellt:
+ `ExecuteStatement` ruft ein einzelnes oder mehrere Elemente aus einer Tabelle ab. `BatchExecuteStatement` ruft mehrere Elemente aus verschiedenen Tabellen in einem einzigen Vorgang ab. Beide dieser Operationen verwenden [PartiQL](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.html), eine SQL-kompatible Abfragesprache.
+ `GetItem` – Ruft ein einzelnes Element aus einer Tabelle ab. Dies ist die effizienteste Methode, um ein einzelnes Element zu lesen, da sie direkten Zugriff auf den physischen Standort des Elements ermöglicht. (DynamoDB bietet auch die `BatchGetItem`-Operation, mit der Sie bis zu 100 `GetItem`-Aufrufe in einer einzigen Operation ausführen können.)
+ `Query` – Ruft alle Elemente mit einem bestimmten Partitionsschlüssel ab. Innerhalb dieser Elemente können Sie eine Bedingung auf den Sortierschlüssel anwenden und nur eine Teilmenge der Daten abrufen. `Query` ermöglicht schnellen und effizienten Zugriff auf die Partitionen, in denen die Daten gespeichert sind. (Weitere Informationen finden Sie unter [Partitionen und Datenverteilung in DynamoDB](HowItWorks.Partitions.md).)
+ `Scan` – Ruft alle Elemente in der angegebenen Tabelle ab. (Diese Operation sollte nicht über großen Tabellen ausgeführt werden, da sie große Mengen an Systemressourcen belegen kann.)

**Anmerkung**  
Mit einer relationalen Datenbank können Sie die `SELECT`-Anweisung verwenden, um Daten aus mehreren Tabellen zu verknüpfen und die Ergebnisse zurückzugeben. Joins (Verknüpfungen) sind eine Voraussetzung für das relationale Modell. Um sicherzustellen, dass Joins effizient ausgeführt werden, sollten die Datenbank und die zugehörigen Anwendungen kontinuierlich leistungsoptimiert werden. DynamoDB ist eine nicht relationale NoSQL-Datenbank und unterstützt keine Tabellen-Joins. Stattdessen lesen die Anwendungen die Daten aus den Tabellen nacheinander aus. 

In den folgenden Abschnitten werden die verschiedenen Anwendungsfälle für das Lesen von Daten sowie Anleitungen zum Ausführen dieser Aufgaben mit einer relationalen Datenbank und mit DynamoDB beschrieben.

**Topics**
+ [Unterschiede beim Lesen eines Elements mit dem zugehörigen Primärschlüssel](SQLtoNoSQL.ReadData.SingleItem.md)
+ [Unterschiede beim Abfragen einer Tabelle](SQLtoNoSQL.ReadData.Query.md)
+ [Unterschiede beim Scannen einer Tabelle](SQLtoNoSQL.ReadData.Scan.md)