Konvertierungsfunktionen¶
Diese Funktionsfamilie kann verwendet werden, um einen Ausdruck eines beliebigen Snowflake-Datentyps in einen anderen Datentyp zu konvertieren.
Unter diesem Thema:
Liste der Funktionen¶
Unterkategorie |
Funktion |
Anmerkungen |
---|---|---|
Jeder Datentyp |
||
Fehlerbehandlungsversion von CAST. |
||
Text/Zeichen/Binärdatentypen |
||
Fehlerbehandlungsversion von TO_BINARY |
||
Numerische Datentypen |
||
Fehlerbehandlungsversionen von TO_DECIMAL, TO_NUMBER usw. |
||
Fehlerbehandlungsversion von TO_DOUBLE. |
||
Boolescher Datentyp |
||
Fehlerbehandlungsversion von TO_BOOLEAN. |
||
Datentypen für Datum und Uhrzeit |
||
Fehlerbehandlungsversion von TO_DATE. |
||
Fehlerbehandlungsversion von TO_TIME. |
||
Fehlerbehandlungsversionen von TO_TIMESTAMP etc. |
||
Semistrukturierte Datentypen |
||
Datentypen für Geodaten |
||
Fehlerbehandlungsversion von TO_GEOGRAPHY |
||
Fehlerbehandlungsversion von TO_GEOMETRY |
||
Konvertierungsfunktionen zur Fehlerbehandlung¶
Konvertierungsfunktionen mit einem Präfix TRY_ sind spezielle Versionen ihrer jeweiligen Konvertierungsfunktionen. Wenn die Konvertierung nicht ausgeführt werden kann, lösen diese Funktionen keinen Fehler aus, sondern geben einen NULL-Wert zurück:
Diese Funktionen unterstützen nur Zeichenfolgenausdrücke (d. h. Datentyp VARCHAR oder CHAR) als Eingabe.
Wichtig
Diese Konvertierungsfunktionen zur Fehlerbehandlung sind für Situationen optimiert, in denen Konvertierungsfehler relativ selten auftreten:
Wenn es keine (oder nur sehr wenige) Fehler gibt, sollten sie keine sichtbaren Auswirkungen auf die Leistung haben.
Bei einer großen Anzahl von Konvertierungsfehlern kann die Verwendung dieser Funktionen zu deutlichen Leistungseinbußen führen. Auch bei der Verwendung mit dem VARIANT-Typ können einige Operationen zu Leistungseinbußen führen.
Numerische Formate in Konvertierungsfunktionen¶
Die Funktionen TO_DECIMAL , TO_NUMBER , TO_NUMERIC und TO_DOUBLE akzeptieren einen optionalen Parameter, der das Format der Eingabezeichenfolge angibt, wenn der Eingabeausdruck eine Zeichenfolge ergibt. Weitere Informationen zu den Werten, die dieser Parameter haben kann, finden Sie unter SQL-Formatmodelle.
Datums- und Uhrzeitformate in Konvertierungsfunktionen¶
Mit den folgenden Funktionen können Sie das erwartete Datums-, Uhrzeit- oder Zeitstempelformat zum Analysieren (Parsen) oder Erzeugen einer Zeichenfolge angeben:
Sie geben das Format in einem optionalen Argument an, und verwenden Sie die folgenden Elemente (ohne Berücksichtigung der Groß-/Kleinschreibung) zur Beschreibung des Formats:
Formatelement |
Beschreibung |
---|---|
|
Vierstellige Jahresangabe. |
|
Zweistellige Jahreszahl, gesteuert durch den Sitzungsparameter TWO_DIGIT_CENTURY_START. Wenn Sie zum Beispiel |
|
Zweistelliger Monat ( |
|
Vollständiger oder abgekürzter Monatsname. |
|
Vollständiger Monatsname. |
|
Zwei Ziffern für Tag des Monats ( |
|
Abgekürzter Wochentag. |
|
Zwei Ziffern für Stunde ( |
|
Zwei Ziffern für Stunde ( |
|
Ante Meridiem ( |
|
Zwei Ziffern für Minute ( |
|
Zwei Ziffern für Sekunde ( |
|
Sekundenbruchteile mit der Genauigkeit |
|
Zeitzonenstunde und -minute, Offset von UTC. Kann |
|
Vierstellige Jahreszahl im ISO-Format, die für Jahre v. u. Z. negativ ist. |
Bemerkung
Bei Verwendung eines reinen Datumsformats wird davon ausgegangen, dass die zugehörige Uhrzeit Mitternacht an diesem Tag ist.
Alles, was im Format zwischen doppelten Anführungszeichen oder anderen als den oben genannten Elementen liegt, wird analysiert und formatiert, ohne interpretiert zu werden.
Weitere Informationen zu gültigen Bereichen, die Anzahl der Ziffern und zu bewährten Verfahren finden Sie unter Zusätzliche Informationen zur Verwendung von Datums-, Uhrzeit- und Zeitstempelformaten.
Nutzungshinweise¶
Alles, was im Format zwischen doppelten Anführungszeichen oder anderen als den oben genannten Elementen liegt, wird analysiert und formatiert, ohne interpretiert zu werden.
Beispiele¶
Konvertieren einer Zeichenfolge in ein Datum unter Verwendung des spezifischen Eingabeformats dd/mm/yyyy
. Das Anzeigeformat für Datumswerte in der Ausgabe wird durch den Sitzungsparameter DATE_OUTPUT_FORMAT bestimmt (Standard: YYYY-MM-DD
).
SELECT TO_DATE('3/4/2024', 'dd/mm/yyyy');
+-----------------------------------+
| TO_DATE('3/4/2024', 'DD/MM/YYYY') |
|-----------------------------------|
| 2024-04-03 |
+-----------------------------------+
Konvertieren eines Datums in eine Zeichenfolge und Angeben eines Datumsausgabeformats von mon dd, yyyy
.
SELECT TO_VARCHAR('2024-04-05'::DATE, 'mon dd, yyyy');
+------------------------------------------------+
| TO_VARCHAR('2024-04-05'::DATE, 'MON DD, YYYY') |
|------------------------------------------------|
| Apr 05, 2024 |
+------------------------------------------------+
Binärformate in Konvertierungsfunktionen¶
TO_CHAR , TO_VARCHAR und TO_BINARY akzeptieren ein optionales Argument, das das erwartete Format zum Parsen oder Erstellen einer Zeichenfolge angibt.
Das Format kann eine der folgenden Zeichenfolgen sein (Groß-/Kleinschreibung wird nicht berücksichtigt):
HEX
BASE64
UTF-8
Weitere Informationen zu diesen Dateiformaten finden Sie unter Übersicht der unterstützten Binärformate.
Beispiele für die Verwendung dieser Formate finden Sie im Abschnitt „Beispiele“ von Eingabe und Ausgabe von Binärdaten.