date_trunc
Funkcja
Dotyczy: Databricks SQL Databricks Runtime
Zwraca sygnaturę czasową obciętą do jednostki określonej w elemecie unit
.
Składni
date_trunc(unit, expr)
Argumenty
unit
STRING
: literał.expr
: ADATE
,TIMESTAMP
lubSTRING
z prawidłowym formatem znacznika czasu.
Zwraca
A TIMESTAMP
.
Notatki
Prawidłowe jednostki dla unit
są (bez uwzględniania wielkości liter):
'YEAR'
, ,'YYYY'
'YY'
: obcięcie do pierwszej daty rokuexpr
, w których przypada, część czasowa będzie równa zero'QUARTER'
: obcięcie do pierwszej daty kwartału, w którychexpr
przypada, część czasowa będzie równa zero'MONTH'
, ,'MM'
'MON'
: obcięcie do pierwszej daty miesiąca,expr
w których przypada, część czasowa będzie równa zero'WEEK'
: obcięty do poniedziałku tygodnia, w którychexpr
spadnie, część czasowa będzie zerowa'DAY'
,'DD'
: zero poza częścią czasową'HOUR'
: zero na minutę i sekundę z częścią ułamkową'MINUTE'
: zero out drugiego z części ułamkowej'SECOND'
: zero z drugiej części ułamkowej'MILLISECOND'
: zero z mikrosekund'MICROSECOND'
: wszystko pozostaje
Jeśli funkcja unit
nie jest dobrze sformułowana, funkcja zwraca wartość NULL
.
Przykłady
> 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