postgresql数字到时间戳转换时区问题

时间:2014-10-22 18:16:37

标签: postgresql

我正在尝试将数字转换为postgresql中的时间戳。但是,它总是在EST时区中转换它。在运行查询之前,我尝试以下操作。

set time zone 'UTC+10';

select to_timestamp(r.date/1000) as current_email_timestamp
FROM email;

然而,时间戳似乎总是在美国时区。这些电子邮件主要是在工作时间发送的,但是当我使用上述查询将数字更改回时间戳时,它会在夜间显示所有电子邮件

可能是数字中的时间戳存储在美国时区,或者可能是在从数字转换回时间戳时,它没有正确地转换时区。

有人可以告诉我如何解决这个问题

此致 阿里夫

1 个答案:

答案 0 :(得分:0)

您可以使用at time zone修饰符:

select to_timestamp(1411738200), 
       to_timestamp(1411738200) at time zone 'America/Chicago', 
       to_timestamp(1411738200) at time zone 'UTC+10'

您的postgres安装可能默认为EST。