MaxCompute获取当前季度的第一天日期(odps sql)

工作中遇到获取当前季度的第一天,如下所示

SELECT CASE WHEN QUARTER(GETDATE()) = 1 THEN DATETRUNC(GETDATE(),'yyyy')

WHEN QUARTER(GETDATE()) = 2 THEN DATEADD(DATETRUNC(GETDATE(),'yyyy'),3,'mm')

WHEN QUARTER(GETDATE()) = 3 THEN DATEADD(DATETRUNC(GETDATE(),'yyyy'),6,'mm')

ELSE DATEADD(DATETRUNC(GETDATE(),'yyyy'),9,'mm')

END AS 当前季度的第一天;

补充:

QUARTER() 返回一个日期的季度,范围是1~4。此函数为MaxCompute 2.0扩展函数。

DATETRUNC() 返回将日期date按照datepart指定的时间单位进行截取后的日期值。

运行效果如下:

MaxCompute获取当前季度的第一天日期(odps sql)_第1张图片

你可能感兴趣的:(odps,大数据,数据仓库,maxcompute)