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

TRY_CAST-Funktion

Fokusmodus
TRY_CAST-Funktion - Amazon Redshift

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.

Im Vergleich zur CAST-Funktion versucht TRY_CAST zunächst, den Ausdruck in den angegebenen Typ umzuwandeln. Wenn die Umwandlung aufgrund von Konvertierungsfehlern fehlschlägt, gibt der Vorgang Null zurück. Wenn eine Konvertierung nicht ausdrücklich zulässig ist, gibt der Vorgang einen Fehler zurück. Die Liste der möglichen Konvertierungen finden Sie in den folgenden Nutzungshinweisen. Der Versuch, einen booleschen Wert in einen Zeitstempel zu konvertieren, ist beispielsweise nicht zulässig.

Syntax

TRY_CAST(expression AS type)

Argumente

expression

Ein Ausdruck, der einen oder mehrere Werte auswertet, beispielsweise ein Spaltenname oder ein Literal. Die Konvertierung von Null-Werten gibt Null-Werte zurück. Der Ausdruck darf keine leeren Zeichenfolgen enthalten.

Typ

Einer der unterstützten Datentypen. Eine vollständige Liste der Datentypen finden Sie unterDatentypen. Eine Liste der unterstützten Paare von Quell- und Zieldatentyp finden Sie in den folgenden Verwendungshinweisen.

Rückgabetyp

TRY_CAST gibt einen Wert des durch das Typargument angegebenen Datentyps zurück. Wenn die Konvertierung fehlschlägt, gibt der Vorgang Null zurück.

Nutzungshinweise

Im Folgenden finden Sie die Liste der Quell- und Zieldatentyppaare, die Amazon Redshift für TRY_CAST unterstützt.

BOOL

SMALLINT, INT, BIGINT, SUPER

SMALLINT

BOOL, INT, BIGINT, DEZIMAL, REAL, FLOAT, BPCHAR, TEXT, VARCHAR, SUPER

INT

BOOL, SMALLINT, BIGINT, DEZIMAL, REAL, FLOAT, BPCHAR, TEXT, VARCHAR, SUPER

BIGINT

BOOL, SMALLINT, INT, DEZIMAL, REAL, FLOAT, BPCHAR, TEXT, VARCHAR, SUPER

DEZIMAL

SMALLINT, INT, BIGINT, REAL, FLOAT, BPCHAR, TEXT, VARCHAR, SUPER

ECHT

SMALLINT, INT, BIGINT, DECIMAL, FLOAT, BPCHAR, TEXT, VARCHAR, SUPER

SCHWEBEN

SMALLINT, INT, BIGINT, DEZIMAL, REAL, BPCHAR, TEXT, VARCHAR, SUPER

BPCHAR

SMALLINT, INT, BIGINT, DEZIMAL, REAL, FLOAT, TEXT, VARCHAR, TIMESTAMP, TIMESTAMPTZ, DATE, TIME, TIMEETZ, SUPER

TEXT

SMALLINT, INT, BIGINT, DECIMAL, REAL, FLOAT, BPCHAR, VARCHAR, TIMESTAMP, TIMESTAMPTZ, DATE, TIME, TIMETZ, SUPER

VARCHAR

SMALLINT, INT, BIGINT, DECIMAL, REAL, FLOAT, BPCHAR, TEXT, TIMESTAMP, TIMESTAMPTZ, DATE, TIME, TIMEETZ, SUPER

ZEITSTEMPEL

BPCHAR, TEXT, VARCHAR, TIMESTAMPTZ, DATUM, UHRZEIT

ZEITSTEMPEL TZ

BOCHAR, TEXT, VARCHAR, ZEITSTEMPEL, DATUM, UHRZEIT, TIMETZ

DATUM

BPCHAR, TEXT, VARCHAR, TIMESTAMP, TIMESTAMPTZ

ZEIT

BPCHAR, TEXT, VARCHAR

ZEITEN METZ

BOCHAR, TEXT, VARCHAR

SUPER

SUPER kann in jeden anderen Datentyp konvertiert werden, mit Ausnahme von DATE, TIME, TIMETZ, TIMESTAMP und TIMESTAMPTZ.

Beispiele

Das folgende Beispiel wandelt einen STRING in einen INTEGER-Wert um.

SELECT TRY_CAST('123' AS INT); int ---- 123

Das folgende Beispiel gibt Null zurück. Die Konvertierung einer ZEICHENFOLGE in eine GANZZAHL ist zulässig, sodass TRY_CAST keinen Fehler zurückgibt, aber 'foo' ist keine Ganzzahl, sodass die Funktion Null zurückgibt.

SELECT TRY_CAST('foo' AS INT)

Das folgende Beispiel gibt einen Fehler zurück, da die Konvertierung eines BOOLEAN in einen TIMESTAMP nicht zulässig ist.

SELECT TRY_CAST(true as timestamp);

Da TRY_CAST Null zurückgibt, anstatt sofort einen Fehler zurückzugeben, wenn die Konvertierung fehlschlägt, können Sie TRY_CAST verwenden, um ungültige Daten herauszufiltern. Stellen Sie sich das folgende Beispiel vor, in dem eine ungültige Zeile aufgrund eines Konvertierungsfehlers in der Altersspalte für Akua Mansa herausgefiltert wird.

CREATE TABLE IF NOT EXISTS student_data( name VARCHAR(100) NOT NULL, age VARCHAR(3) NOT NULL, enrollment_date DATE NOT NULL); INSERT INTO student_data (name, age, enrollment_date) VALUES ('Alejandro Rosalez', '10', '01/01/2000'), ('Akua Mansa', 'Ten', '01/01/2000'); SELECT * FROM student_data WHERE TRY_CAST(age AS INT) IS NOT NULL; --Akua is not returned. name | age | enrollment_date -------------------+-----+----------------- Alejandro Rosalez | 10 | 01/01/2000

Auf dieser Seite

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.