在sqlSnowflake中展开开始日期和结束日期



我有以下问题:

在雪花数据库表中,我有一个名为"开始日期"的字段和另一个称为"结束日期"的域。

我需要的是扩展每个记录的日期,例如:

id | date_start | date_end 
1  | 2019-12-01 | 2019-12-05 
2  | 2020-01-01 | 2020-01-06 

结果应该如下所示:

id | date_new 
1  | 2019-12-01  
1  | 2019-12-02 
1  | 2019-12-03 
1  | 2019-12-04 
1  | 2019-12-05 
2  | 2020-01-01 
2  | 2020-01-02 
2  | 2020-01-03 
2  | 2020-01-04 
2  | 2020-01-05 

感谢

一个选项是递归查询:

with recursive cte (id, date_start, date_end) as (
select id, date_start, date_end from mytable
union all
select id, date_start + interval '1 day', date_end from cte where date_start < date_end
)
select id, date_start date_new from cte

相关内容

  • 没有找到相关文章

最新更新