date_trunc
-Funktion
Gilt für: Databricks SQL Databricks Runtime
Gibt den Zeitstempel zurück, der auf die in unit
angegebene Einheit abgeschnitten wurde.
Syntax
date_trunc(unit, expr)
Argumente
unit
: EinSTRING
-Literalexpr
: EinDATE
,TIMESTAMP
, oderSTRING
mit einem gültigen Zeitstempelformat.
Gibt zurück
Ein TIMESTAMP
.
Hinweise
Gültige Einheiten für unit
sind (ohne Beachtung der Groß-/Kleinschreibung):
'YEAR'
,'YYYY'
,'YY'
: Abschneiden bis zum ersten Datum des Jahres, in dasexpr
fällt, der Uhrzeitteil wird entfernt'QUARTER'
: Abschneiden bis zum ersten Datum des Quartals, in dasexpr
fällt, der Uhrzeitteil wird entfernt'MONTH'
,'MM'
,'MON'
: Abschneiden bis zum ersten Datum des Monats, in denexpr
fällt, der Uhrzeitteil wird entfernt'WEEK'
: Abschneiden bis zum Montag der Woche, in dieexpr
fällt, der Uhrzeitteil wird entfernt'DAY'
,'DD'
: Entfernen des Uhrzeitteils'HOUR'
: Entfernen der Minute und Sekunde mit Bruchteil'MINUTE'
: Entfernen der Sekunde mit Bruchteil'SECOND'
: Entfernen des Sekundenbruchteils'MILLISECOND'
: Entfernen der Mikrosekunden'MICROSECOND'
: alles bleibt
Wenn die unit
nicht wohlgeformt ist, gibt die Funktion NULL
zurück.
Beispiele
> SELECT date_trunc('YEAR', '2015-03-05T09:32:05.359');
2015-01-01 00:00:00
> SELECT date_trunc('MM', '2015-03-05T09:32:05.359');
2015-03-01 00:00:00
> SELECT date_trunc('DD', '2015-03-05T09:32:05.359');
2015-03-05 00:00:00
> SELECT date_trunc('HOUR', '2015-03-05T09:32:05.359');
2015-03-05 09:00:00
> SELECT date_trunc('MILLISECOND', '2015-03-05T09:32:05.123456');
2015-03-05 09:32:05.123
-- Not a recognised unit
> SELECT date_trunc('MS', '2015-03-05T09:32:05.123456');
NULL