适用于:
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