Überlegungen zu Datentypen - Amazon Athena

Überlegungen zu Datentypen

Größenbeschränkungen

Beachten Sie bei Datentypen, für die keine Größenbeschränkung angegeben ist, dass es für alle Daten in einer einzelnen Zeile eine praktische Grenze von 32 MB gibt. Weitere Informationen finden Sie unter Row or column size limitation in Überlegungen und Einschränkungen für SQL-Abfragen in Amazon Athena.

CHAR und VARCHAR

Ein CHAR(n)- Wert hat immer eine Anzahl von n-Zeichen. Wenn Sie beispielsweise 'abc' in CHAR(7) umwandeln, werden 4 abschließende Leerzeichen hinzugefügt.

Vergleiche von CHAR-Werten beinhalten führende und nachfolgende Leerzeichen.

Wenn für CHAR oder VARCHAR eine Länge angegeben wird, werden Zeichenfolgen beim Lesen auf die angegebene Länge gekürzt. Wenn die zugrunde liegende Datenzeichenfolge länger ist, bleibt die zugrunde liegende Datenzeichenfolge unverändert.

Um ein einfaches Anführungszeichen in einem CHAR oder VARCHAR zu umgehen, verwenden Sie ein zusätzliches einfaches Anführungszeichen.

Um einen Datentyp, der keine Zeichenfolge ist, in einer DML-Abfrage in eine Zeichenfolge umzuwandeln, müssen Sie in den VARCHAR-Datentyp umwandeln.

Wenn Sie die substr-Funktion verwenden möchten, um eine Teilzeichenfolge der angegebenen Länge aus einem CHAR-Datentyp zurückzugeben, müssen Sie den CHAR-Wert zuerst in einen VARCHAR umwandeln. Im folgenden Beispiel verwendet col1 den CHAR-Datentyp.

substr(CAST(col1 AS VARCHAR), 1, 4)

DECIMAL

Um Dezimalwerte als Literale in SELECT-Anfragen anzugeben, z. B. bei der Auswahl von Zeilen mit einem bestimmten Dezimalwert, können Sie den DECIMAL-Typ angeben und den Dezimalwert als Literal in einfachen Anführungszeichen in Ihrer Abfrage auflisten, wie in den folgenden Beispielen gezeigt.

SELECT * FROM my_table WHERE decimal_value = DECIMAL '0.12'
SELECT DECIMAL '44.6' + DECIMAL '77.2'