Hadoop 如何在配置单元中生成日期序列?(创建表格)
假设我当前有一个表,每个帐户有一行,表中的数据是:Hadoop 如何在配置单元中生成日期序列?(创建表格),hadoop,hive,Hadoop,Hive,假设我当前有一个表,每个帐户有一行,表中的数据是: 帐号 开始日期 结束日期 现在,我想创建一个新表,该表在帐户打开的每一天有一行,即在每个帐户的开始日期和结束日期(含)之间的每一行有一天 例如 表1 Account Number Start Date End Date 123 1-Jan-17 1-Jul-17 456 1-Feb-17 4-May-17 表2(所需表格) 我知道在Postgresql中有
Account Number Start Date End Date
123 1-Jan-17 1-Jul-17
456 1-Feb-17 4-May-17
表2(所需表格)
我知道在Postgresql中有一个名为“generate series”的函数,它可以让您轻松地完成这项工作。我想知道在蜂箱中是否有类似的功能可以让你也这么做
谢谢 使用
DATE
数据类型存储日期,使用ISO格式YYYY-MM-DD
作为日期工作表的文本表示形式,如charm。谢谢!:)@DavidווMarkovitz感谢您的解决方案。我在寻找一个类似的结果,但不是日序列,而是月序列,在这个序列中,我应该得到每个月的一行和一个新列,该列生成每个月的结束日期。谢谢你的帮助。请为此打开一个新问题。如果几天内没有人回答,我会回答。
select t.AccountNumber
,date_add (t.StartDate,pe.i) as Day
from Table1 t
lateral view
posexplode(split(space(datediff(t.EndDate,t.StartDate)),' ')) pe as i,x
select t.AccountNumber
,date_add (t.StartDate,pe.i) as Day
from Table1 t
lateral view
posexplode(split(space(datediff(t.EndDate,t.StartDate)),' ')) pe as i,x