在sql雪花中展开开始和结束日期

在sql雪花中展开开始和结束日期,sql,date,snowflake-cloud-data-platform,recursive-query,Sql,Date,Snowflake Cloud Data Platform,Recursive Query,我有以下问题: 在雪花数据库表中,我有一个名为开始日期的字段和另一个名为结束日期的字段 我需要的是扩展每个记录的日期,例如: id | date_start | date_end 1 | 2019-12-01 | 2019-12-05 2 | 2020-01-01 | 2020-01-06 结果应该如下所示: 谢谢一个选项是递归查询: with recursive cte (id, date_start, date_end) as ( select id, date_star

我有以下问题:

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

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

id | date_start | date_end 
1  | 2019-12-01 | 2019-12-05 
2  | 2020-01-01 | 2020-01-06 
结果应该如下所示:


谢谢

一个选项是递归查询:

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

到目前为止,您自己尝试了什么?尝试一下这里标记为解决方案的代码,它工作正常。
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