2011-09-28 67 views
6

這將是在MySQL中存儲時區偏移的正確數據類型/結構嗎?我只想存儲數值(城市和國家顯然存儲在其他列中)。在MySQL中存儲時區偏移的數據類型/結構

例子:

  • -5:00瓜亞基爾,ECU
  • -4:30加拉加斯,VEN
  • 0:00一些城市
  • 2:00波恩,GER
+4

如果您只存儲「數字值」,那麼實際上並未存儲時區,而只是存儲時區偏移量。有一個很大的區別,特別是如果你正在處理未來的日期,由於政治原因,抵消可能會隨時改變。 – nogridbag

回答

5

您應該使用TIME。這是該任務的正確數據類型:您有格式化並且可以使用calculations。此外,根據文檔,TIME也應該作爲兩個時刻之間差異的結果使用,這是時區實際上是什麼。

從文檔:

MySQL的檢索並在顯示TIME值 'HH:MM:SS' 格式(或 'HHH:MM:SS' 的大小時的值格式)。 TIME值的範圍可以從 '-838:59:59'到'838:59:59'。小時部分可能非常大,因爲 時間類型不僅可用於表示一天中的某個時間(其中 必須小於24小時),還可用於兩個事件之間的已用時間或時間間隔 (可能是遠遠大於24小時,甚至不利於)。