mysql
  • datetime
  • 2010-06-22 68 views 0 likes 
    0

    我有存儲在我的MySQL表日期2010-01-01 01:01:01DATE_FORMAT在MySQL中的select語句

    但是當我查詢的日期與date_format命令狀

    DATE_FORMAT(date_created, '%%m-%%d-%%y (%%h:%%i %%p)') as cdate 
    

    我基於MySQL的系統時區得到一個轉換日期,即有幾個小時的差異。

    對於我所使用的查詢:

    "SET GLOBAL time_zone = '+5:30'" 
    "SET SESSION time_zone = '+5:30'" 
    

    但還是MySQL查詢時提供轉換日期。我想要確切地獲取存儲在該表中的日期而不增加/減少時區差異。

    請幫忙。我很困難。

    回答

    0
    SET SESSION time_zone = SYSTEM; 
    

    SET SESSION time_zone = '+0:0'; -- for UTC time if server TZ is set correctly. 
    
    +0

    我已經運行命令SELECT @@ global.time_zone,@@ session.time_zone; 以上查詢也returnign +0:00 .. 但它仍然是時間轉換到其他時區.. 請幫助... – 2010-06-22 10:41:19

    +0

    然後這是存儲在那裏的時間。 根據tz將日期和時間列轉換爲UTC,並將其存儲在表中之前生效。 如果您需要同時存儲它,則需要在存儲它時設置相同的時區。 – 2010-06-22 10:49:25

    +0

    數據庫仍然返回正確的時間。當運行此查詢時: 從表中選擇date_created .. 但它轉換時,我使用命令: select DATE_FORMAT(date_created,'%% m - %% d - %% y(%% h:%% i% %p)')作爲從表012ate的cdate 請確保您在相同的會話中設置TZ helpppp – 2010-06-22 10:51:53

    相關問題