【发布时间】:2020-09-13 09:49:59
【问题描述】:
一段时间前,this question 得到了关于在 hive 中生成日期系列的回答,这意味着填充有效日期和有效日期(或开始-结束日期)之间的天数。我想知道是否可以从同一个语句中将结束日期限制为今天,对于那些结束日期可能是 9999-12-21 的情况,这是一个活动记录。是否可以?怎么样?
上面链接的问题中建议的脚本是:
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
【问题讨论】:
-
你不能把
case when这样-case when t.EndDate='9999-12-31' then now() else t.EndDate end放在上面的sql中计算EndDate吗? -
谢谢@KoushikRoy。发布后几个小时尝试了不同的方法,最后它在以下情况下工作:
CASE WHEN t.eff_out_y = '9999-12-31' THEN CURRENT_DATE()