【问题标题】:Datatype/structure to store timezone offset in MySQL在 MySQL 中存储时区偏移的数据类型/结构
【发布时间】:2011-11-27 01:26:25
【问题描述】:

在 MySQL 中存储时区偏移的正确数据类型/结构是什么?我只想存储数值(城市和国家显然存储在其他列中)。

例子:

  • -5:00 瓜亚基尔,ECU
  • -4:30 加拉加斯,VEN
  • 0:00 某城市
  • 2:00 波恩,德国

【问题讨论】:

  • 如果您只存储“数值”,您实际上并没有存储时区,您只是存储时区偏移量。有很大的不同,尤其是当您处理未来的日期时,由于政治原因,偏移量可能随时发生变化。

标签: mysql sql database-design timezone sqldatatypes


【解决方案1】:

您应该使用TIME。这是任务的正确数据类型:您有格式并且calculations 可用。此外,根据文档,TIME 也应该用作两个时刻之间差异的结果,这实际上是时区。

来自文档:

MySQL 以 'HH:MM:SS' 格式(或 'HHH:MM:SS' 格式用于大小时值)。 TIME 值的范围可以从 “-838:59:59”到“838:59:59”。小时部分可能很大,因为 TIME 类型不仅可以用来表示一天中的时间(其中 必须小于 24 小时),还包括经过的时间或时间间隔 在两个事件之间(可能远大于 24 小时,甚至 负)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-25
    • 2011-08-20
    • 2015-05-06
    • 1970-01-01
    • 2010-10-22
    • 2013-06-24
    • 2011-05-28
    • 2018-12-17
    相关资源
    最近更新 更多