# 12.9 MySQL 使用什么日历?

MySQL 使用所谓的预测公历。

每个从儒略历转换到公历的国家都必须在转换期间至少放弃十天。要了解它是如何工作的,请考虑 1582 年 10 月,即第一次儒略到格里高利转换发生的月份。

周一 周二 周三 周四 星期五 周六 星期日
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 日之间没有日期。这种不连续性称为转换。转换之前的任何日期都是儒略历,转换之后的任何日期都是公历。切换期间的日期不存在。应用于实际未使用的日期的日历称为预测日历。

因此,如果我们假设从来没有一个转换并且公历规则总是规则,那么我们就有一个预测的公历。这是 MySQL 所使用的,正如标准 SQL 所要求的那样。因此,转换之前的日期存储为 MySQL日期要么约会时间必须调整值以补偿差异。重要的是要认识到,并非所有国家都同时发生切换,而且切换越晚,损失的天数就越多。例如,在英国,它发生在 1752 年,在 9 月 2 日星期三之后是 9 月 14 日星期四。俄罗斯一直使用儒略历直到 1918 年,在此过程中损失了 13 天,通常被称为“十月”。革命”根据公历发生在十一月。