- Kategorien:
Funktionen für semistrukturierte und strukturierte Daten (Typprädikate)
IS_TIMESTAMP_*¶
Überprüft, ob ein VARIANT-Argument den entsprechenden Zeitstempel-Wert enthält:
IS_TIMESTAMP_LTZ (Wert mit lokaler Zeitzone).
IS_TIMESTAMP_NTZ (Wert ohne Zeitzone).
IS_TIMESTAMP_TZ (Wert mit Zeitzone).
- Siehe auch:
Syntax¶
IS_TIMESTAMP_LTZ( <variant_expr> ) IS_TIMESTAMP_NTZ( <variant_expr> ) IS_TIMESTAMP_TZ( <variant_expr> )
Argumente¶
variant_expr
Ein Ausdruck, der einen Wert vom Typ VARIANT ergibt.
Rückgabewerte¶
Gibt einen BOOLEAN Wert oder NULL zurück.
Gibt TRUE zurück, wenn der VARIANT-Wert einen Zeitstempel enthält. Andernfalls wird FALSE zurückgegeben.
Wenn die Eingabe NULL ist, wird NULL ohne Meldung eines Fehlers zurückgegeben.
Beispiele¶
Zeigt alle Zeitstempel in einer VARIANT-Spalte an, wobei die Ausgabe die für die Sitzung angegebene Zeitzone verwendet.
Bemerkung
Das Ausgabeformat für die Zeitzone wird über einen Parameter festgelegt:
Der Parameter TIMESTAMP_LTZ_OUTPUT_FORMAT legt das Format für die TIMESTAMP_LTZ-Werte fest.
Der Parameter TIMESTAMP_NTZ_OUTPUT_FORMAT legt das Format für die TIMESTAMP_NTZ-Werte fest.
Der Parameter TIMESTAMP_TZ_OUTPUT_FORMAT legt das Format für die TIMESTAMP_TZ-Werte fest.
In diesen Beispielen ist die lokale Zeitzone US Pacific Standard Time (-08:00 bezogen auf GMT/UCT).
Erstellen und laden Sie eine Tabelle mit verschiedenen Datums- und Zeitwerten in einer VARIANT-Spalte:
CREATE OR REPLACE TABLE vardttm (v VARIANT);
INSERT INTO vardttm SELECT TO_VARIANT(TO_DATE('2024-02-24')); INSERT INTO vardttm SELECT TO_VARIANT(TO_TIME('20:57:01.123456789+07:00')); INSERT INTO vardttm SELECT TO_VARIANT(TO_TIMESTAMP('2023-02-24 12:00:00.456')); INSERT INTO vardttm SELECT TO_VARIANT(TO_TIMESTAMP_LTZ('2022-02-24 13:00:00.123 +01:00')); INSERT INTO vardttm SELECT TO_VARIANT(TO_TIMESTAMP_NTZ('2021-02-24 14:00:00.123 +01:00')); INSERT INTO vardttm SELECT TO_VARIANT(TO_TIMESTAMP_TZ('2020-02-24 15:00:00.123 +01:00'));
Verwenden Sie die Funktion TYPEOF in einer Abfrage, um die Datentypen der in der VARIANT-Spalte gespeicherten Werte v
anzuzeigen:
SELECT v, TYPEOF(v) AS type FROM vardttm;
+---------------------------------+---------------+ | V | TYPE | |---------------------------------+---------------| | "2024-02-24" | DATE | | "20:57:01" | TIME | | "2023-02-24 12:00:00.456" | TIMESTAMP_NTZ | | "2022-02-24 04:00:00.123 -0800" | TIMESTAMP_LTZ | | "2021-02-24 14:00:00.123" | TIMESTAMP_NTZ | | "2020-02-24 15:00:00.123 +0100" | TIMESTAMP_TZ | +---------------------------------+---------------+
Zeigen Sie die TIMESTAMP_NTZ-Werte in den Daten an, indem Sie die Funktion IS_TIMESTAMP_NTZ in einer WHERE-Klausel verwenden:
SELECT * FROM vardttm WHERE IS_TIMESTAMP_NTZ(v);
+---------------------------+ | V | |---------------------------| | "2023-02-24 12:00:00.456" | | "2021-02-24 14:00:00.123" | +---------------------------+
Zeigen Sie die TIMESTAMP_LTZ-Werte in den Daten an, indem Sie die Funktion IS_TIMESTAMP_LTZ in einer WHERE-Klausel verwenden:
SELECT * FROM vardttm WHERE IS_TIMESTAMP_LTZ(v);
+---------------------------------+ | V | |---------------------------------| | "2022-02-24 04:00:00.123 -0800" | +---------------------------------+
Zeigen Sie die TIMESTAMP_TZ-Werte in den Daten an, indem Sie die Funktion IS_TIMESTAMP_TZ in einer WHERE-Klausel verwenden:
SELECT * FROM vardttm WHERE IS_TIMESTAMP_TZ(v);
+---------------------------------+ | V | |---------------------------------| | "2020-02-24 15:00:00.123 +0100" | +---------------------------------+