【发布时间】:2014-04-24 14:57:16
【问题描述】:
我正在尝试运行 Hive QUERy 我有一张桌子,可以说 3 列。 其中一个是日期列,其数据为:
2014-04-01
2014-04-03
cf 2014-04-20
现在我想从上述数据中选择最大日期并与当前日期(假设当前日期为 2014-04-24)进行差异并将差异添加到输出中。 我的意思是 ;查询应选择 2014-04-20 并将其与当前日期相减以给出输出为 4,然后将此差异添加到所有日期以输出为:
2014-04-05
2014-04-07
cf 2014-04-24
我试过了,但遇到了语义问题:
选择 A, B, date_add( SOMEDATE, datediff(to_date( FROM_UNIXTIME(UNIX_TIMESTAMP() )), max(SOMEDATE))) 作为 SOMEDATE
【问题讨论】:
-
您需要两个 select 语句或一个子查询或一个 cte。这取决于你使用的平台,你不解释。
-
我在 Hive 上运行这个