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

问题描述 投票:0回答:1

我有以下问题:

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

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

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 

谢谢

sql date snowflake-cloud-data-platform recursive-query
1个回答
0
投票

一个选项是递归查询:

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
© www.soinside.com 2019 - 2024. All rights reserved.