↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

不受支持的版本: 7.3 / 7.2 / 7.1
历史版本PostgreSQL 7.1 已于 2006 年 4 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本手册首页。

A.2. 历法的历史 #

注意

由 José Soares()贡献

儒略日由法国学者 Joseph Justus Scaliger(1540-1609)发明,其名称大概取自 Scaliger 的父亲、意大利学者 Julius Caesar Scaliger(1484-1558)。 天文学家用儒略纪为自公元前 4713 年 1 月 1 日以来的每一天分配一个唯一的编号。这就是所谓的儒略日(JD)。JD 0 表示从 UTC 公元前 4713 年 1 月 1 日正午到 UTC 公元前 4713 年 1 月 2 日正午的 24 小时。

"儒略日"(Julian Day)与"儒略积日"(Julian Date)并不相同。儒略历由 Julius Caesar 于公元前 45 年引入。直到 1582 年各国开始改用格里高利历之前,它在西方世界一直被广泛使用。 在儒略历中,回归年近似为 365 1/4 天 = 365.25 天。这会在大约 128 年里累计 1 天的误差。不断累积的历法误差促使教皇格里高利十三世按照特伦托会议的指示改革历法。

在格里高利历中,回归年近似为 365 + 97 / 400 天 = 365.2425 天。因此,回归年相对于格里高利历大约每 3300 年偏移一天。

365+97/400 这一近似值是通过每 400 年设置 97 个闰年来实现的,具体规则如下:

能被 4 整除的年份是闰年。
但是,能被 100 整除的年份不是闰年。
但是,能被 400 整除的年份仍是闰年。

因此,1700、1800、1900、2100 和 2200 年不是闰年,而 1600、2000 和 2400 年是闰年。 相比之下,在较老的儒略历中只有能被 4 整除的年份是闰年。

1582 年 2 月发布的教皇诏书规定,应从 1582 年 10 月删去 10 天,使 10 月 15 日紧接在 10 月 4 日之后。意大利、波兰、葡萄牙和西班牙执行了这一规定。其他天主教国家随后不久也照办,但新教国家不愿改变,而希腊正教国家直到本世纪初才改历。 大不列颠及其领地(包括现在的美国)在 1752 年执行了这一改革。因此 1752 年 9 月 2 日之后紧跟着的是 1752 年 9 月 14 日。 这就是 Unix 系统的 cal 会输出下面内容的原因:

% cal 9 1752
   September 1752
 S  M Tu  W Th  F  S
       1  2 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
   

注意

SQL92 指出,“在datetime literal的定义中,datetime value受格里高利历下日期和时间的自然规则约束”。1752-09-03 到 1752-09-13 之间的日期虽然在某些国家被教皇敕令取消,但它们符合“自然规则”,因而是合法的日期。

世界上不同地区发展出了不同的历法,其中许多都早于格里高利体系。例如,中国历法的起源可以追溯到公元前 14 世纪。传说黄帝在公元前 2637 年发明了这种历法。中华人民共和国在民用方面使用格里高利历。中国历法则用于确定节日。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。