我在hive表中有一个列存储为文本。文字如下所示
2007-01-01T00:00:00 + 00:00
我试图找出以上述格式存储为文本的两个时间戳值之间的时间差。
答案 0 :(得分:1)
假设我们有一个Hive表 dateTest ,其中包含两列 date1 字符串, date2 字符串 并假设该表包含具有此值的行:
2007-01-01T00:00:00 + 00:00,2007-02-01T00:00:00 + 00:00
日期采用ISO 8601 UTC格式,因此如果您运行此查询:
select datediff(from_unixtime(unix_timestamp(date2, "yyyy-MM-dd'T'HH:mm:ss")),from_unixtime(unix_timestamp(date1, "yyyy-MM-dd'T'HH:mm:ss"))) as days
from datetest;
结果是31