儒略日系統是一種對日期進行編號的方法。 它與儒略曆無關,儘管它的名稱與該曆法相似,容易造成混淆。 儒略日系統由法國學者約瑟夫·賈斯圖斯·斯卡利傑 (Joseph Justus Scaliger,1540-1609) 發明,可能取自斯卡利傑的父親,義大利學者朱利葉斯·凱撒·斯卡利傑 (Julius Caesar Scaliger,1484-1558)。
在儒略日系統中,每一天都有一個連續的數字,從 JD 0 開始(有時稱為the儒略日)。 JD 0 對應於儒略曆中的西元前 4713 年 1 月 1 日,或格里曆中的西元前 4714 年 11 月 24 日。 儒略日計數最常被天文學家用於標記他們的夜間觀測,因此日期從世界協調時間 (UTC) 中午到下一個世界協調時間 (UTC) 中午,而不是從午夜到午夜:JD 0 表示從西元前 4714 年 11 月 24 日的世界協調時間 (UTC) 中午到西元前 4714 年 11 月 25 日的世界協調時間 (UTC) 中午的 24 小時。
雖然PostgreSQL支援儒略日表示法來輸入和輸出日期(並且還使用儒略日進行一些內部日期時間計算),但它並沒有遵守日期從中午到中午的嚴謹性。PostgreSQL將儒略日視為從當地午夜到當地午夜,與正常日期相同。
然而,這個定義確實提供了一種在需要時獲得天文定義的方法:以 UTC+12
時區進行算術運算。 例如,
=> SELECT extract(julian from '2021-06-23 7:00:00-04'::timestamptz at time zone 'UTC+12'); extract ------------------------------ 2459388.95833333333333333333 (1 row) => SELECT extract(julian from '2021-06-23 8:00:00-04'::timestamptz at time zone 'UTC+12'); extract -------------------------------------- 2459389.0000000000000000000000000000 (1 row) => SELECT extract(julian from date '2021-06-23'); extract --------- 2459389 (1 row)
如果您在文件中發現任何不正確、與您使用特定功能的經驗不符或需要進一步澄清的地方,請使用此表單報告文件問題。