【问题标题】:Hive SQL- Adding (not appending) seconds to an existing time stampHive SQL-向现有时间戳添加(不附加)秒
【发布时间】:2019-10-27 06:10:13
【问题描述】:

我正在尝试将秒数添加到现有时间戳以查找结束时间。 我在一个字段中有开始时间,在一个字段中有总持续时间。我怎么能加。我尝试使用 date_add 函数,但不起作用。

Select
      testdate, 
      DATE_ADD ( testdate,CAST (testduration as INT) ) as Test_end_date  
from <DBName>  limit 10;
TestDate is this format= 9/14/2017 16:33:25.000000
Testduration is in seconds e.g: 144 seconds or so

它添加到日期而不是秒部分。

感谢任何帮助。

试过 Date_Add 功能,不工作。

【问题讨论】:

标签: sql hive timestamp


【解决方案1】:

使用 unix_timestamp 转换为秒,添加秒

select from_unixtime(UNIX_TIMESTAMP('9/14/2017 16:33:25.000000','M/dd/yyyy HH:mm:ss.SSSSS')+144, 'yyyy-MM-dd HH:mm:ss.SSSSS')

这将返回标准 Hive 时间戳格式的时间戳,如果您需要保留原始格式,请更改输出格式:'M/dd/yyyy HH:mm:ss.SSSSS' 作为from_unixtime() 函数的第二个参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-13
    • 1970-01-01
    相关资源
    最近更新 更多