Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  ...  /  What Calendar Is Used By MySQL?

13.2.7 MySQL 使用什么日历?

MySQL 使用所谓的 格里高利历(Proleptic Gregorian calendar)。

每个从儒略历转换为格里高利历的国家都需要丢弃至少十天。在了解这个过程中,考虑 1582 年 10 月,当第一个儒略历到格里高利历的转换发生时。

Monday Tuesday Wednesday Thursday Friday Saturday Sunday
1 2 3 4 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

在10月4日到10月15日之间没有日期。这一断续性称为 切换点。任何在切换点之前的日期都是Julian日期,而任何在切换点之后的日期都是Gregorian日期。在切换点期间的日期是不存在的。

在日期上应用日历,但实际上并未使用时称为proleptic。因此,如果我们假设从来没有发生过切换,并且格里高利规则始终有效,我们就有一个proleptic 格里高利日历。这是MySQL所使用的,也是标准SQL要求的缘故。因此,存储在MySQLDATEDATETIME值的日期之前,需要进行调整,以补偿时间差异。需要注意的是,切换并没有在所有国家同时发生,并且晚些发生的国家失去了更多的日子。例如,在英国,这个事件于1752年9月2日星期三后发生了星期四9月14日。俄罗斯直到1918年仍然使用儒略历,过程中损失了13天,而被广泛称为““十月革命””的事件实际上是在格里高利历中的11月发生的。