Postgresql日期时区问题

Postgresql日期时区问题,postgresql,date,timezone,Postgresql,Date,Timezone,我有一个pg数据库,带有带时区的列类型时间戳。我插入以下日期: 2016-08-01 00:00:00格林威治标准时间 但是,在数据库中,它显示为: 2016-07-31 20:00:00-04 有人知道会发生什么吗 提前谢谢 尽管名称不同,带有时区的时间戳实际上并不存储时区。它使用会话的时区将其标准化为UTC,并存储UTC。检索时,它将从UTC转换回会话时区 您可以使用命令更改会话时区。最好,你应该使用。例如: SET TIME ZONE 'Europe/Paris' 或 或者使用时间戳[无

我有一个pg数据库,带有带时区的列类型时间戳。我插入以下日期:

2016-08-01 00:00:00格林威治标准时间

但是,在数据库中,它显示为:

2016-07-31 20:00:00-04

有人知道会发生什么吗


提前谢谢

尽管名称不同,
带有时区的时间戳
实际上并不存储时区。它使用会话的时区将其标准化为UTC,并存储UTC。检索时,它将从UTC转换回会话时区

您可以使用命令更改会话时区。最好,你应该使用。例如:

SET TIME ZONE 'Europe/Paris'


或者使用
时间戳[无时区]
类型,它不进行转换。

尽管名称不同,
带时区的时间戳实际上并不存储时区。它使用会话的时区将其标准化为UTC,并存储UTC。检索时,它将从UTC转换回会话时区

您可以使用命令更改会话时区。最好,你应该使用。例如:

SET TIME ZONE 'Europe/Paris'


或者使用
时间戳[无时区]
类型,该类型不进行转换。

您确定输入结果显示在该显示中吗?两个小时的时间差将是一个时区问题(因此是
-04
),但从08-16到07-31有点大。顺便说一句,当有一个完全可用的日期类型时,为什么要对日期使用时间戳列?嗨-抱歉,我粘贴了错误的输入&刚刚更新了我的问题。所以只需调整四个小时的时区,相同的时间戳,但显示在-04时区中。可能的重复您确定输入会导致该显示吗?两个小时的时间差将是一个时区问题(因此是
-04
),但从08-16到07-31有点大。顺便说一句,当有一个完全可用的日期类型时,为什么要对日期使用时间戳列?嗨-抱歉,我粘贴了错误的输入&刚刚更新了我的问题。所以只需调整四个小时的时区,相同的时间戳,但显示在-04时区中。可能是