为什么我的时区时间戳转换不正确?

时间:2019-07-13 13:13:00

标签: postgresql psql timestamp-with-timezone

我正在使用psql,并将会话的时间戳记设置为UTC。表中的数据以UTC设置。当我将时区转换应用于GMT-5时,时间戳会向前移动而不是向后移动。在下面的QUERY 2中,我希望结果为2019-03-18 20:26:17+00而不是2019-03-19 06:26:17。 我在QUERY3

中得到了期望值

我在这里想念什么?

下面是一个示例

utc_submit_timestamp中的

table1类型为timestamp with time zone

psql=> SET timezone TO 'EST';
SET

--QUERY 1
psql=> select utc_submit_timestamp from table1 limit 1;
  utc_submit_timestamp
------------------------
 2019-03-19 01:26:17+00
(1 row)

--QUERY 2 WHY IS THE RESULT NOT '2019-03-18 20:26:17+00'?
psql=> select utc_submit_timestamp at time zone 'Etc/GMT-5' from table1 limit 1;
      timezone
---------------------
 2019-03-19 06:26:17
(1 row)

--QUERY 3
psql=> select utc_submit_timestamp at time zone 'UTC' at time zone 'Etc/GMT-5' from table1 limit 1;
        timezone
------------------------
 2019-03-18 20:26:17+00

0 个答案:

没有答案