date_trunc
Функции
Область применения: Databricks SQL Databricks Runtime
Возвращает метку времени, усеченную до единицы, указанной в unit
.
Синтаксис
date_trunc(unit, expr)
Аргументы
unit
: литералSTRING
.expr
DATE
: ,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