带时区的 HIVE from.unixtime(...)
HIVE from.unixtime(...) with Time Zone
我在 GMT+8 时区的机器上设置了 Hive。因此,from_unixtime(946656000)
returns 2000-01-01 00:00:00
而不是 1999-12-31 16:30:00
。根据手册,此函数 returns 使用当前系统时区的日期字符串。我该怎么做才能获得带有 UTC 时区的日期字符串,即 1999-12-31 16:30:00
?
您可以使用 to_utc_timestamp(T timestamp, STRING timezone)
。
这是一个将 IST 中的时间戳转换为 UTC 的示例。
select TO_UTC_TIMESTAMP(from_unixtime(946656000),'IST') c
我在 GMT+8 时区的机器上设置了 Hive。因此,from_unixtime(946656000)
returns 2000-01-01 00:00:00
而不是 1999-12-31 16:30:00
。根据手册,此函数 returns 使用当前系统时区的日期字符串。我该怎么做才能获得带有 UTC 时区的日期字符串,即 1999-12-31 16:30:00
?
您可以使用 to_utc_timestamp(T timestamp, STRING timezone)
。
这是一个将 IST 中的时间戳转换为 UTC 的示例。
select TO_UTC_TIMESTAMP(from_unixtime(946656000),'IST') c