date_trunc Funkcja

Dotyczy:zaznacz pole wyboru oznaczone jako yes Databricks SQL check oznaczone tak Databricks Runtime

Zwraca sygnaturę czasową obciętą do jednostki określonej w elemecie unit.

Składni

date_trunc(unit, expr)

Argumenty

  • unitSTRING: literał.
  • expr: A DATE, TIMESTAMPlub STRING 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órych expr 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órych expr 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