2015-06-02 24 views
0

如何在輸出上添加時區顯示?當它的PDT,我想它說PDT,並且它的PST自動更改爲PST。在mysql的輸出顯示中添加PDT或PST

這是我當前的查詢

SELECT IF (DAYOFWEEK(CURDATE()) = 1, DATE_FORMAT(DATE_ADD(curdate(), INTERVAL 2 DAY), "%h:%i %p"), DATE_FORMAT(CURDATE(), "%h:%i %p")) 

的這個輸出是

12:00 AM 

如果我能輸出的時區這將是偉大的,像

12:00 AM PDT or 12:00 AM PST 
+1

mysql日期/時間值不包括TZ值。你必須告訴mysql在字符串格式化時應用什麼時區。 –

回答

1

的MySQL沒有按不存儲時區,因此您擁有的DATETIME值不包含時區。您必須分別存儲時區。

小警告:如果您將時區存儲爲「PST」或「PDT」,它將很容易顯示,但很難轉換爲其他時區,因爲「PST」不是唯一的,有幾個不同的區域帶有該縮寫的時區。

如果您需要將DATETIME轉換爲其他時區,則應該將DATETIME存儲爲UTC,並將時區存儲爲完整的tz-name,如「America/New_York」。然而,你可能需要使用一種編程語言來處理所有這些,比如Pyhton,Ruby,PHP,Java,因爲SQL通常不會有非常好的時區支持,AFAIK對於MySQL也是如此。