在 Hive 中将字符串转换为时间戳
Posted
技术标签:
【中文标题】在 Hive 中将字符串转换为时间戳【英文标题】:Convert string into timestamp in Hive 【发布时间】:2017-10-11 15:13:15 【问题描述】:我有一个值“2017-09-27T19:25:15.927-07:00”,有什么方法可以将其转换为时间戳? 我使用 Hive 1.1.0。
select unix_timestamp("2017-09-27T19:25:15.927-07:00", "yyyy-MM-ddTHH:mm:ss.SSSX")
但它拖到了Bad date/time conversion format
select unix_timestamp("2017-09-27T19:25:15.927-07:00", "yyyy-MM-ddTHH:mm:ss.SSSZZZ")
但它返回NULL
【问题讨论】:
【参考方案1】:format 是 yyyy-MM-dd'T'HH:mm:ss.SSSXXX"
。注意 'T' 周围的单引号
select from_unixtime(unix_timestamp("2017-09-27T19:25:15.927-07:00", "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"))
【讨论】:
以上是关于在 Hive 中将字符串转换为时间戳的主要内容,如果未能解决你的问题,请参考以下文章
Hive/SparkSQL:如何将 Unix 时间戳转换为时间戳(不是字符串)?