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:
Beachten Sie, dass diese Funktionen nur Zeichenfolgenausdrücke (d. h. Datentyp VARCHAR oder CHAR) als Eingabe unterstützen.
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 Jahresangabe, gesteuert durch den Sitzungsparameter TWO_DIGIT_CENTURY_START, z. B. wenn dieser auf |
|
Zweistellige Monatsangabe (01=Januar usw.). |
|
Vollständiger oder abgekürzter Monatsname. |
|
Vollständiger Monatsname. |
|
Zweistellige Tagesangabe des Monats (01 bis 31). |
|
Abgekürzter Wochentag. |
|
Zwei Ziffern für die Stunde (00 bis 23). |
|
Zwei Ziffern für die Stunde (01 bis 12). |
|
Ante Meridiem (AM) / Post Meridiem (PM). Verwenden Sie diese Angabe nur mit |
|
Zwei Ziffern für die Minute (00 bis 59). |
|
Zwei Ziffern für die Sekunde (00 bis 59). |
|
Sekundenbruchteile mit einer Genauigkeit von 0 (Sekunden) bis 9 (Nanosekunden), z. B. |
|
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¶
SELECT TO_DATE('3/4/2013', 'dd/mm/yyyy');
-----------------------------------+
to_date('3/4/2013', 'dd/mm/yyyy') |
-----------------------------------+
2013-04-03 |
-----------------------------------+
SELECT TO_VARCHAR('2013-04-05'::date, 'mon dd, yyyy');
------------------------------------------------+
to_varchar('2013-04-05'::date, 'mon dd, yyyy') |
------------------------------------------------+
Apr 05, 2013 |
------------------------------------------------+
Binärformate in Konvertierungsfunktionen¶
TO_CHAR , TO_VARCHAR und alle TO_BINARY-Variationen akzeptieren ein optionales Argument, das das erwartete Format zum Analysieren 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 Overview of Supported Binary Formats.
Beispiele für die Verwendung dieser Formate finden Sie im Abschnitt „Beispiele“ von Binary Input and Output.