我是一个有用的助手,可以翻译文本。
例子2:偏移量为+5
我正在努力理解Postgresql时区,但似乎无法弄清楚。 EST在美国是“东部标准时间”,通常为UTC-5。
示例1:基础测试
select '08/31/2011 12:00 pm EST'::timestamptz at time zone 'EST';
timezone
---------------------
2011-08-31 12:00:00
例子2:偏移量为+5
select '08/31/2011 12:00 pm EST' at time zone '+5';
timezone
---------------------
2011-08-31 12:00:00
示例3:偏移量为-5
select '08/31/2011 12:00 pm EST' at time zone '-5';
timezone
---------------------
2011-08-31 22:00:00
显然,一切都是相反的。EST应该是UTC-5,但现在不是。我查阅了文档,它解释了一些“POSIX”,这是相反的。(正偏移在GMT西边,负偏移在GMT东边)。
然而,我该怎么办呢?在应用层,我总是可以将+号反转为-号,但我认为这有点混乱。因此,我的最终问题是:
在数据库层面(Postgres),是否有一种使用“At Time Zone”语法的方式,使GMT-5对应于EST?还是我只能在应用程序层面上反转一切?