snowflake需要基于列值在循环中运行sql insert
我有一张如下的桌子snowflake需要基于列值在循环中运行sql insert,sql,snowflake-cloud-data-platform,snowsql,Sql,Snowflake Cloud Data Platform,Snowsql,我有一张如下的桌子 id date. no_of Days 12 12-03-1999 30 13 12-03-1999 7 14 12-03-1999 22 15 12-03-1999 12 我需要创建另一个表,其中有一个额外的字段作为date_增量 这将基于给定的日期增加到1天,基于0天的天数。 输出如下所示 id date.
id date. no_of Days
12 12-03-1999 30
13 12-03-1999 7
14 12-03-1999 22
15 12-03-1999 12
我需要创建另一个表,其中有一个额外的字段作为date_增量
这将基于给定的日期增加到1天,基于0天的天数。
输出如下所示
id date. no_of Days. date_increment
12 12-03-1999 30 12-03-1999
12 12-03-1999 30 13-03-1999
12 12-03-1999 30 14-03-1999
.. ..... .. till 30 days
13 12-03-1999 7 12-03-1999
13 12-03-1999 7 13-03-1999
13 12-03-1999 7 14-03-1999
.. ... .. till 7 day
14 12-03-1999 22
15 12-03-1999 12
我正在为snowflake编写这个查询,它不支持循环或动态查询。
有人能推荐一下吗
即使我使用另一个IDE(如python),我也不确定如何解决这个问题。一种方法是使用生成器:
一种方法是使用发电机:
非常感谢我的朋友。。我唯一需要改变的是,不要用numrows。。我得带你去。非常感谢我的朋友。。我唯一需要改变的是,不要用numrows。。我不得不去数
select t.*, date + (n - 1) * interval '1 day'
from t join
(select seq4() as n
from table(generator(rowcount => 100)) g
) n
on n.n <= t.no_of_days;