make_timestamp
-Funktion
Gilt für: Databricks SQL Databricks Runtime
Erstellt einen Zeitstempel aus den Feldern year
, month
, day
, hour
, min
, sec
und timezone
.
Syntax
make_timestamp(year, month, day, hour, min, sec [, timezone] )
Argumente
year
: Ein INTEGER-Ausdruck, der in einen Wert zwischen 1 und 9.999 ausgewertet wird.month
: Ein INTEGER-Ausdruck, der in einen Wert zwischen 1 (Januar) und 12 (Dezember) ausgewertet wird.day
: Ein INTEGER-Ausdruck, der in einen Wert zwischen 1 und 31 ausgewertet wird.hour
: Ein INTEGER-Ausdruck, der in einen Wert zwischen 0 und 23 ausgewertet wird.min
: Ein INTEGER-Ausdruck, der in einen Wert zwischen 0 und 59 ausgewertet wird.sec
: Ein numerischer Ausdruck, der in einen Wert zwischen 0 und 60 ausgewertet wird.timezone
: Ein optionaler STRING-Ausdruck, der in eine gültige Zeitzonenzeichenfolge ausgewertet wird. Beispiel: CET, UTC.
Gibt zurück
Ein TIMESTAMP-Wert.
Wenn eines der Argumente in Databricks SQL außerhalb des gültigen Bereichs liegt, ist das Ergebnis NULL
.
Wenn in Databricks Runtime ein Argument außerhalb des gültigen Bereichs liegt, gibt die Funktion einen Fehler zurück, es sei denn, spark.sql.ansi.enabled ist false
– in diesem Fall gibt die Funktion NULL
zurück.
Wenn sec
60
ist, wird dies als 0 interpretiert, und dem Ergebnis wird eine Minute hinzugefügt.
Beispiele
> SELECT make_timestamp(2014, 12, 28, 6, 30, 45.887);
2014-12-28 06:30:45.887
> SELECT make_timestamp(2014, 12, 28, 6, 30, 45.887, 'CET');
2014-12-27 21:30:45.887
> SELECT make_timestamp(2019, 6, 30, 23, 59, 60);
2019-07-01 00:00:00
> SELECT make_timestamp(2019, 13, 1, 10, 11, 12, 'PST');
NULL
> SELECT make_timestamp(NULL, 7, 22, 15, 30, 0);
NULL