CAST-Funktion in Amazon QLDB - Amazon Quantum Ledger Database (Amazon QLDB)

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.

CAST-Funktion in Amazon QLDB

Verwenden Sie in Amazon QLDB dieCAST Funktion, um einen bestimmten Ausdruck in einen Wert auszuwerten und den Wert in einen bestimmten Zieldatentyp zu konvertieren. Wenn die Konvertierung nicht durchgeführt werden kann, gibt die Funktion einen

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.

Typ

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 das Argument type (Typ) angegeben wird.

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 inNULL 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

Die folgenden Beispiele sind 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"

Verbundene Funktionen