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