精确时间点:DATETIME

DATETIME 数据类型存储从公元 1 年开始的时期中的任何时刻。事实上,DATETIME 实际上是 28 种数据类型的一个系列,其中每种数据类型都具有不同的精度。在定义 DATETIME 列时,请指定其精度。该列可以包含列表中的任何序列:
  • 小时
  • 分钟
  • 小数

因此,可以定义只存储年、只存储月和日或者精确到小时甚至精确到毫秒的日期和时间的 DATETIME 列。下表显示 DATETIME 值的大小范围为 2 到 11 个字节(具体取决于其精度)。

DATETIME 的优点是可以存储特定的日期和时间值。与 DATE 列相比,DATETIME 列通常需要更多的存储空间(这取决于 DATETIME 限定符)。此外,Datetime 的显示格式不灵活。有关如何避开显示格式的信息,请参阅强制 DATETIME 或 INTERVAL 值的格式
表 1. DATETIME 数据类型的精度
精度 大小(当 f 是奇数时,将大小取整到下一个整字节) 精度 大小(当 f 是奇数时,将大小取整到下一个整字节)
年到年 3 天到小时 3
年到月 4 天到分钟 4
年到天 5 天到秒 5
年到小时 6 天到小数 (f) 5 + f/2
年到分钟 7 小时到小时 2
年到秒 8 小时到分钟 3
年到小数 (f) 8 + f/2 小时到秒 4
月到月 2 小时到小数 (f) 4 + f/2
月到天 3 分钟到分钟 2
月到月 4 分钟到秒 3
月到分钟 5 分钟到小数 (f) 3 + f/2
月到秒 6 秒到秒 2
月到小数 (f) 6 + f/2 秒到小数 (f) 2 + f/2
天到天 2 小数到小数 (f) 1 + f/2