4
我试图围绕Postgresql时区打印我的头,而且我似乎无法弄清楚这一点。 EST在美国是“东部标准时间”,通常是UTC-5。在Postgresql中,如何在“时区”取消时区偏移量
实施例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再次... supposed to be UTC-5。现在,我通过文档搜索,它确实解释事情是“POSIX”,which is backwards。 (正偏移量在GMT以西,而负偏移量在GMT以东)。
但是,我该如何解决这个问题?在应用层,我总是可以将+符号反转为 - 符号,但对我来说这似乎有点混乱。因此,我的最终问题。
在数据库层(Postgres),有没有办法使用“At Time Zone”语法,以便GMT-5对应于EST?或者我只需要在应用程序层反转所有内容?
感谢。我无法在任何地方找到此功能。你知道你在哪里了解到这个吗? – Dragontamer5788
@ Dragontamer5788:好的,我在http://postgresql.1045698.n5.nabble.com/Behavior-of-quot-at-time-zone-quot-td1928049.html –
上发现了这个。您的链接有Postgresql文档的链接。哦,我想我只是没有阅读所有的手册。感谢您的链接,我想我会在下次更仔细阅读。 – Dragontamer5788