我想将纪元时间转换为pst时区。 例如:1482440069当我转换为PST时,我应该得到2016-12-22
现在,当我尝试这个时,我得到了正确的答案
SELECT from_utc_timestamp('1970-01-01 07:00:00', 'PST');
另外,当我尝试这个时,我得到了适当的值
select from_unixtime(cast(1482440069 as bigint), 'yyyy-MM-dd')
o/p : 2016-12-22
但是,当我尝试这个查询时,我得到NULL响应
select from_utc_timestamp(from_unixtime(cast(1482440069 as bigint), 'yyyy-MM-dd'),'PST') -- Gives NULL response
答案 0 :(得分:0)
您可以尝试:
SELECT from_utc_timestamp(cast(from_unixtime('1970-01-01 07:00:00', 'yyyy-MM-dd HH:mm:ss') as bigint) + (time_zone value like -5 or -6 * 3600));
答案 1 :(得分:0)
使用yyyy-MM-dd HH:mm:ss
代替yyyy-MM-dd
hive> select from_utc_timestamp(from_unixtime(cast(1482440069 as bigint), 'yyyy-MM-dd HH:mm:ss'),'PST');
OK
2016-12-22 04:54:29