• 首页
  • css3教程
  • html5教程
  • vue手册
  • php手册
  • MySQL手册
  • redis手册
  • jQuery手册
  • 2位数字的年份

    具有两位数年份的日期值是不明确的,因为世纪是未知的。由于MySQL内部使用4位数字存储年份,因此必须将这些值解释为4位数字格式。

    对于DATETIMEDATETIMESTAMP类型,MySQL使用以下规则解释用不明确的年份值指定的日期:

    • 范围内的年值00-69变为2000-2069
    • 范围内的年值70-99变为1970-1999

    对于YEAR,规则是相同的,不同的是:00插入数字的YEAR结果为,0000而不是2000。要指定零YEAR并将其解释为2000,请将其指定为字符串'0''00'

    请记住,这些规则只是对数据值的含义提供合理猜测的启发式方法。如果MySQL使用的规则未产生您所需的值,则必须提供包含4位数字年份值的明确输入。

    ORDER BY正确校验YEAR具有两位数年份的值。

    一些功能,如MIN()MAX()转换YEAR为数字。这意味着具有两位数年份的值不适用于这些功能。在这种情况下,解决方法是将YEAR年份格式转换为4位数字。