如何在hive中计算周日期?

w6lpcovy  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(606)

背景

postgresql有很好的功能 date_trunc() 这样就很容易计算出一周开始的日期。这对于一周级别的聚合非常有用。如。

SELECT 
  date_trunc('week', create_date), 
  count(*) 
FROM ... 
GROUP BY 1;

hiveql具有 WEEKOFYEAR() 这就是你的周数。如果你把这个和 YEAR() 你可以制作与postgres相同类型的聚合。

SELECT 
  YEAR(create_date), 
  WEEKOFYEAR(create_date), 
  count(*) 
FROM ... 
GROUP BY YEAR(create_date), WEEKOFYEAR(create_date);

太棒了。但是如果我想要一周的实际日期呢?

问题

如何在hiveql中计算周日期,可以从年和周数计算,也可以直接从时间戳计算?

igetnqfo

igetnqfo1#

Hive里的功能不多。因此它支持自定义自定义项。你可以编写自己的函数并集成到hive中。
以下是一些可能有用的自定义项:
1.)链接1
2.)链接2
希望这对你有帮助。。!!!

相关问题