我需要创建一个包含三列(sprint\u name、begin\u date、end\u date)的配置单元表。我已经填充了sprint\u name列,基于此,我想以两周为增量填充另外两列。所以基本上,冲刺持续两周。如果无法使用配置单元,请帮助我在sql server中创建配置单元。
Sprint_name Begin_date End_date
Sprint 1.1 METADATA FYE20 2/6/2019 2/19/2019
Sprint 1.2 METADATA FYE20 2/20/2019 3/5/2019
Sprint 1.3 METADATA FYE20 3/6/2019 3/19/2019
Sprint 1.4 METADATA FYE20
Sprint 1.5 METADATA FYE20
Sprint 1.6 METADATA FYE20
Sprint 1.6 METADATA SALE FYE20
Sprint 1.7 METADATA FYE20
Sprint 2.1 METADATA FYE20
Sprint 2.2 METADATA FYE20
Sprint 2.3 METADATA FYE20
Sprint 2.3 METADATA SALE FYE20
Sprint 2.3 METADATA DOWN FYE20
Sprint 2.4 METADATA FYE20
Sprint 2.5 METADATA FYE20
Sprint 2.6 METADATA FYE20 7/10/2019 7/23/2019
Sprint 2.7 SALE FYE20 7/24/2019 8/6/2019
Sprint 2.7 METADATA FYE20 7/24/2019 8/6/2019
Sprint 3.1 METADATA FYE20
.
.
.
Sprint 4.6 METADATA FYE20
.
.
Sprint 1.1 METADATA FYE21
3条答案
按热度按时间yrwegjxp1#
如果你想在Hive里做,请在下面添加答案。
仅加载四条记录作为示例,就可以加载所有记录。
oxcyiej72#
还有一个技巧是在hive中使用带有posexplode的cte更新表。
在第一条记录中插入开始日期和结束日期,其余条目的保留日期为空。
查询:
;
注意:我想过使用posexplode(split(space(max(userid)-min(userid),“”))pe作为i,x,但是max&min不支持udaf。
结果:
eeq64g8w3#
在sql server中,假设
begin_date
以及end_date
对于第一条记录,可以使用窗口函数更新下一行的日期值。