Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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 eines der Argumente in Databricks Runtime außerhalb der Grenzen liegt, löst Azure Databricks DATETIME_FIELD_OUT_OF_BOUNDS aus, es sei denn, spark.sql.ansi.enabled ist false, in diesem Fall gibt die Funktion NULL zurück.
Wenn sec60 ist, wird dies als 0 interpretiert, und dem Ergebnis wird eine Minute hinzugefügt.
Wenn sec einen Bruchwert aufweist, der in Mikrosekunden nicht dargestellt werden kann, löst Azure Databricks INVALID_FRACTION_OF_SECOND aus.
Häufige Fehlerbedingungen
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
-- In DBR with ANSI mode, out-of-bounds fields raise an error.
> SELECT make_timestamp(2024, 13, 1, 0, 0, 0);
Error: DATETIME_FIELD_OUT_OF_BOUNDS