Hive DateTime Truncators(QUARTER,WEEK,DAYOFWEEK)?

luo*_*990 0 sql datetime hive

是否有任何表达式QUARTER,WEEK以及DAYOFWEEKHive(v0.14.1)中的DateTime字段与MySql中的这些buildin函数做同样的事情?

这是我想要的规范(来自MySql doc):

季度 WEEK DAYOFWEEK

注意:1.函数quarter()是在Hive 1.3中引入的,但是我需要一个expr来支持更低版本.2.支持函数weekofyear()而不是week(),但是有一点不同.但没关系,所以请忽略这个.

luo*_*990 6

假设DateTime字段是 order_time

  • DAYOFWEEK: PMOD(DATEDIFF(order_time, '2012-01-01'), 7)
  • 周: WEEKOFYEAR(order_time)
  • QUARTER(hive <1.3): (INT((MONTH(order_time)-1)/3)+1)
  • QUARTER(hive> = 1.3): QUARTER(order_time)