date_trunc Функции

Область применения:проверка помечено да Databricks SQL проверка помечено да Databricks Runtime

Возвращает метку времени, усеченную до единицы, указанной в unit.

Синтаксис

date_trunc(unit, expr)

Аргументы

  • unit: литерал STRING .
  • exprDATE: , TIMESTAMPили STRING с допустимым форматом метки времени.

Возвращает

Объект TIMESTAMP.

Примечания

Допустимые единицы для unit имеют значение (без учета регистра):

  • 'YEAR', 'YYYY', 'YY': усечение до первой даты года, expr в которую попадает, временная часть будет равна нулю
  • 'QUARTER': усечение до первой даты квартала, в который expr попадает, временная часть будет равна нулю
  • 'MONTH', 'MM', 'MON': усечение до первой даты месяца, в который expr попадает, временная часть будет равна нулю
  • 'WEEK': усечение до понедельника недели, в которую expr попадает, временная часть будет равна нулю
  • 'DAY', 'DD': обнуление временной части
  • 'HOUR': обнуление минуты и секунды с дробной частью
  • 'MINUTE': обнуление второй части с дробной частью
  • 'SECOND': обнуление второй части дроби
  • 'MILLISECOND': обнуление микросекунд
  • 'MICROSECOND': все остается

Если не имеет правильного unit формата, функция возвращает NULL.

Примеры

> 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