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“.

Abfragen von Daten in DynamoDB

Fokusmodus
Abfragen von Daten 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.

Die folgenden Beispiele zeigen einige Möglichkeiten zur Verwendung von HiveQL zum Abfragen von Daten in DynamoDB.

Diese Beispiele beziehen sich auf die Tabelle ddb_features im Tutorial (Schritt 5: Kopieren von Daten nach DynamoDB ).

Verwenden von Aggregatfunktionen

HiveQL bietet integrierte Funktionen für die Zusammenfassung von Datenwerten. Sie können z. B. die Funktion MAX verwenden, um den größten Wert für eine ausgewählte Spalte zu finden. Das folgende Beispiel gibt die Erhöhung des höchsten Merkmals im Bundesstaat Colorado zurück.

SELECT MAX(elev_in_ft) FROM ddb_features WHERE state_alpha = 'CO';

Verwenden der GROUP BY- und HAVING-Klauseln

Sie können die GROUP BY-Klausel zum Sammeln von Daten über mehrere Datensätze hinweg verwenden. Diese Klausel wird häufig in Verbindung mit einer aggregierten Funktion wie SUM, COUNT, MIN oder MAX eingesetzt. Sie können mithilfe der HAVING-Klausel auch Ergebnisse verwerfen, die bestimmte Kriterien nicht erfüllen.

Das folgende Beispiel gibt eine Liste der höchsten Erhebungen aus Bundesstaaten mit mehr als fünf Merkmalen in der Tabelle ddb_features zurück.

SELECT state_alpha, max(elev_in_ft) FROM ddb_features GROUP BY state_alpha HAVING count(*) >= 5;

Verknüpfen von zwei DynamoDB-Tabellen

Das folgende Beispiel zeigt, wie eine Hive-Tabelle (east_coast_states) einer Tabelle in DynamoDB zugeordnet wird. Die SELECT-Anweisung ist ein Join dieser beiden Tabellen. Der Join wird auf dem Cluster verarbeitet und zurückgegeben. Der Join wird nicht in DynamoDB ausgeführt.

Stellen Sie sich eine DynamoDB-Tabelle mit dem Namen vor EastCoastStates , die die folgenden Daten enthält:

StateName StateAbbrev Maine ME New Hampshire NH Massachusetts MA Rhode Island RI Connecticut CT New York NY New Jersey NJ Delaware DE Maryland MD Virginia VA North Carolina NC South Carolina SC Georgia GA Florida FL

Nehmen wir an, die Tabelle ist als externe Hive-Tabelle mit dem Namen "east_coast_states" verfügbar:

CREATE EXTERNAL TABLE ddb_east_coast_states (state_name STRING, state_alpha STRING) STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler' TBLPROPERTIES ("dynamodb.table.name" = "EastCoastStates", "dynamodb.column.mapping" = "state_name:StateName,state_alpha:StateAbbrev");

Der folgende Join gibt die Bundesstaaten an der Ostküste der Vereinigten Staaten zurück, die mindestens drei Merkmale aufweisen:

SELECT ecs.state_name, f.feature_class, COUNT(*) FROM ddb_east_coast_states ecs JOIN ddb_features f on ecs.state_alpha = f.state_alpha GROUP BY ecs.state_name, f.feature_class HAVING COUNT(*) >= 3;

Verknüpfen von Tabellen aus anderen Quellen

Im folgenden Beispiel ist "s3_east_coast_states" eine Hive-Tabelle, die einer in Amazon S3 gespeicherten CSV-Datei zugeordnet ist. Die Tabelle ddb_features ist mit Daten in DynamoDB verknüpft. Das folgende Beispiel verknüpft die beiden Tabellen und liefert die geografischen Merkmale der Bundesstaaten, deren Namen mit "New" beginnen.

create external table s3_east_coast_states (state_name STRING, state_alpha STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION 's3://bucketname/path/subpath/';
SELECT ecs.state_name, f.feature_name, f.feature_class FROM s3_east_coast_states ecs JOIN ddb_features f ON ecs.state_alpha = f.state_alpha WHERE ecs.state_name LIKE 'New%';
DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.