更新时间:2026-07-03 GMT+08:00
datetrunc
datetrunc函数用于计算将日期date按照datepart指定的时间单位进行截取后的日期值。
截取datepart之前的部分,除截取的部分外自动填充为默认值。可参考示例代码。
命令格式
datetrunc (string date, string datepart)
参数说明
| 参数 | 是否必选 | 参数类型 | 说明 |
|---|---|---|---|
| date | 是 | DATE 或 STRING | 代表起始日期。 格式为:
|
| datepart | 是 | STRING | 代表需要返回的时间单位。 参数datepart支持扩展的日期格式:年-year、月-month或-mon、日-day和小时-hour。
|
返回值说明
返回DATE或STRING类型的日期值。
- date非DATE或STRING类型时,返回报错,错误信息:data type mismatch;
- date为DATE或STRING类型,但不符合日期值的入参格式时,返回NULL;
- datepart值为NULL时,返回NULL。
- 当datepart指定为时(hh)、分(mi)、秒(ss)时,按天(DD)级别截取返回。
示例代码
静态数据示例
- 示例1:
select datetrunc('2023-08-14 17:00:00', 'yyyy');返回2023-01-01 00:00:00。
- 示例2:
select datetrunc('2023-08-14 17:00:00', 'month');返回2023-08-01 00:00:00。
- 示例3:
select datetrunc('2023-08-14 17:00:00', 'DD');返回2023-08-14。
- 示例4:
select datetrunc('2023-08-14', 'yyyy');返回2023-01-01。
- 示例5:
select datetrunc('2023-08-14 17:11:11', 'hh');返回2023-08-14 17:00:00。
- 示例6:
select datetrunc('2023-08-14', null);返回None。
父主题: 日期函数