如何将带有时区的preocho的纪元时间转换为人类可读日期作为IST

时间:2018-05-23 04:32:11

标签: datetime timezone presto

我在表格中有一列存储纪元时间。

我想将带有时区的人类可读日期时间戳转换为IST。我使用的是以下查询,但转换不正确,它显示的是05:30之前的时间。

presto:default> select to_char(date_trunc('hour',
     from_unixtime((CAST(substr(startdatetime,1,10) AS double )))),
     'dd-mm-yyyy hh24'),startdatetime FROM rocmetricsolr limit 10;


     _col0     | startdatetime 
---------------+---------------
 NULL          | NULL          
 21-05-2018 23 | 1526905879116 
 21-05-2018 23 | 1526905879116 
 21-05-2018 23 | 1526905874892 
 NULL          | NULL          
 21-05-2018 23 | 1526905876216 
 21-05-2018 23 | 1526905876216 
 21-05-2018 23 | 1526905873640 
 21-05-2018 23 | 1526905873640 
 21-05-2018 23 | 1526905903110

1 个答案:

答案 0 :(得分:0)

假设您在rocmetricsolr类型中有一个列startdatetime的表varchar,其中前10位数字显示时间戳:

SELECT from_unixtime(CAST(substr(startdatetime,1,10) AS bigint)) AT TIME ZONE 'America/Los_Angeles'

注意:请根据https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

更改时区名称