有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

javahive:如何计算时差

我的要求很简单,如何计算蜂巢中两列之间的时间差

示例

Time_Start: 10:15:00

Time_End: 11:45:00

I need to do (Time_End-Time_Start) =1:30:00

注:两列均为字符串数据类型,请帮助获取所需结果


共 (2) 个答案

  1. # 1 楼答案

    Language manual包含所有可用日期时间函数的说明。秒差可以这样计算:hour(time_end) * 3600 + minute(time_end) * 60 + second(time_end) - hour(time_start) * 3600 - minute(time_start) * 60 - second(time_start)。您可以用from_unixtime(..., 'HH:mm:ss')将其包装,以获得格式化的时间差

    最好是write a UDF,而不是把所有这些都放到查询中

  2. # 2 楼答案

    你需要将HH:MM:SS时间转换为秒,得到它们之间的差值,并将其重新安排为另一个HH:MM:SS时间