CASTFunktion in Amazon QLDB - Amazon Quantum Ledger-Datenbank (AmazonQLDB)

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.

CASTFunktion in Amazon QLDB

Wichtig

Hinweis zum Ende des Supports: Bestandskunden können Amazon QLDB bis zum Ende des Supports am 31.07.2025 nutzen. Weitere Informationen finden Sie unter Migrieren eines Amazon QLDB Ledgers zu Amazon Aurora SQL Postgre.

Verwenden Sie in Amazon die CAST FunktionQLDB, um einen bestimmten Ausdruck in einen Wert auszuwerten und den Wert in einen bestimmten Zieldatentyp umzuwandeln. Wenn die Konvertierung nicht durchgeführt werden kann, gibt die Funktion einen Fehler zurück.

Syntax

CAST ( expression AS type )

Argumente

expression

Der Feldname oder der Ausdruck, der zu einem Wert ausgewertet wird, den die Funktion umwandelt. Die Konvertierung von Null-Werten gibt Null-Werte zurück. Dieser Parameter kann jeder der unterstützten Datentypen sein.

type

Der Name des Zieldatentyps für die Umwandlung. Bei diesem Parameter kann es sich um einen der unterstützten Datentypen handeln.

Rückgabetyp

Der Datentyp, der durch den type Argument.

Beispiele

Die folgenden Beispiele zeigen die Propagierung unbekannter Typen (NULL oder MISSING).

CAST(null AS null) -- null CAST(missing AS null) -- null CAST(missing AS missing) -- missing CAST(null AS missing) -- missing CAST(null AS boolean) -- null (null AS any data type name results in null) CAST(missing AS boolean) -- missing (missing AS any data type name results in missing)

Jeder Wert, der kein unbekannter Typ ist, kann nicht in NULL oder umgewandelt werdenMISSING.

CAST(true AS null) -- error CAST(true AS missing) -- error CAST(1 AS null) -- error CAST(1 AS missing) -- error

In den nachstehenden Beispielen wird die Umwandlung von AS boolean veranschaulicht.

CAST(true AS boolean) -- true no-op CAST(0 AS boolean) -- false CAST(1 AS boolean) -- true CAST(`1e0` AS boolean) -- true (float) CAST(`1d0` AS boolean) -- true (decimal) CAST('a' AS boolean) -- false CAST('true' AS boolean) -- true (SqlName string 'true') CAST(`'true'` AS boolean) -- true (Ion symbol `'true'`) CAST(`'false'` AS boolean) -- false (Ion symbol `'false'`)

In den nachstehenden Beispielen wird die Umwandlung von AS integer veranschaulicht.

CAST(true AS integer) -- 1 CAST(false AS integer) -- 0 CAST(1 AS integer) -- 1 CAST(`1d0` AS integer) -- 1 CAST(`1d3` AS integer) -- 1000 CAST(1.00 AS integer) -- 1 CAST(1.45 AS integer) -- 1 CAST(1.75 AS integer) -- 1 CAST('12' AS integer) -- 12 CAST('aa' AS integer) -- error CAST(`'22'` AS integer) -- 22 CAST(`'x'` AS integer) -- error

In den nachstehenden Beispielen wird die Umwandlung von AS float veranschaulicht.

CAST(true AS float) -- 1e0 CAST(false AS float) -- 0e0 CAST(1 AS float) -- 1e0 CAST(`1d0` AS float) -- 1e0 CAST(`1d3` AS float) -- 1000e0 CAST(1.00 AS float) -- 1e0 CAST('12' AS float) -- 12e0 CAST('aa' AS float) -- error CAST(`'22'` AS float) -- 22e0 CAST(`'x'` AS float) -- error

In den nachstehenden Beispielen wird die Umwandlung von AS decimal veranschaulicht.

CAST(true AS decimal) -- 1. CAST(false AS decimal) -- 0. CAST(1 AS decimal) -- 1. CAST(`1d0` AS decimal) -- 1. (REPL printer serialized to 1.) CAST(`1d3` AS decimal) -- 1d3 CAST(1.00 AS decimal) -- 1.00 CAST('12' AS decimal) -- 12. CAST('aa' AS decimal) -- error CAST(`'22'` AS decimal) -- 22. CAST(`'x'` AS decimal) -- error

In den nachstehenden Beispielen wird die Umwandlung von AS timestamp veranschaulicht.

CAST(`2001T` AS timestamp) -- 2001T CAST('2001-01-01T' AS timestamp) -- 2001-01-01T CAST(`'2010-01-01T00:00:00.000Z'` AS timestamp) -- 2010-01-01T00:00:00.000Z CAST(true AS timestamp) -- error CAST(2001 AS timestamp) -- error

In den nachstehenden Beispielen wird die Umwandlung von AS symbol veranschaulicht.

CAST(`'xx'` AS symbol) -- xx (`'xx'` is an Ion symbol) CAST('xx' AS symbol) -- xx ('xx' is a string) CAST(42 AS symbol) -- '42' CAST(`1e0` AS symbol) -- '1.0' CAST(`1d0` AS symbol) -- '1' CAST(true AS symbol) -- 'true' CAST(false AS symbol) -- 'false' CAST(`2001T` AS symbol) -- '2001T' CAST(`2001-01-01T00:00:00.000Z` AS symbol) -- '2001-01-01T00:00:00.000Z'

In den nachstehenden Beispielen wird die Umwandlung von AS string veranschaulicht.

CAST(`'xx'` AS string) -- "xx" (`'xx'` is an Ion symbol) CAST('xx' AS string) -- "xx" ('xx' is a string) CAST(42 AS string) -- "42" CAST(`1e0` AS string) -- "1.0" CAST(`1d0` AS string) -- "1" CAST(true AS string) -- "true" CAST(false AS string) -- "false" CAST(`2001T` AS string) -- "2001T" CAST(`2001-01-01T00:00:00.000Z` AS string) -- "2001-01-01T00:00:00.000Z"

In den nachstehenden Beispielen wird die Umwandlung von AS struct veranschaulicht.

CAST(`{ a: 1 }` AS struct) -- {a:1} CAST(true AS struct) -- err

In den nachstehenden Beispielen wird die Umwandlung von AS list veranschaulicht.

CAST(`[1, 2, 3]` AS list) -- [1,2,3] CAST(<<'a', { 'b':2 }>> AS list) -- ["a",{'b':2}] CAST({ 'b':2 } AS list) -- error

Bei den folgenden Beispielen handelt es sich um ausführbare Anweisungen, die einige der vorherigen Beispiele enthalten.

SELECT CAST(true AS integer) FROM << 0 >> -- 1 SELECT CAST('2001-01-01T' AS timestamp) FROM << 0 >> -- 2001-01-01T SELECT CAST('xx' AS symbol) FROM << 0 >> -- xx SELECT CAST(42 AS string) FROM << 0 >> -- "42"

Verwandte Funktionen