如何在Redshift中获取季度末日期与年末日期
在Redshift中获取季度末日期与年末日期
季度末日期计算
基于你已使用的DATE_TRUNC('quarter', ...)推导,核心逻辑是先拿到当前季度起始日期,计算下一季度起始日期后往前推1天,即为当前季度最后一天:
-- 返回timestamp类型的季度末日期 DATEADD(day, -1, DATEADD(month, 3, DATE_TRUNC('quarter', date_column))) AS quarter_end_date -- 转换为date类型 CAST(DATEADD(day, -1, DATEADD(month, 3, DATE_TRUNC('quarter', date_column))) AS DATE) AS quarter_end_date
年末日期计算
通过年份起始日期推导,先获取当年1月1日,加1年得到下一年1月1日,再往前推1天就是当年12月31日:
-- 返回timestamp类型的年末日期 DATEADD(day, -1, DATEADD(year, 1, DATE_TRUNC('year', date_column))) AS year_end_date -- 转换为date类型 CAST(DATEADD(day, -1, DATEADD(year, 1, DATE_TRUNC('year', date_column))) AS DATE) AS year_end_date
示例
若date_column值为'2024-05-15':
- 计算出的季度末日期为
'2024-06-30' - 计算出的年末日期为
'2024-12-31'
内容的提问来源于stack exchange,提问作者Darshan M
相关产品推荐
相关产品推荐

