SQLite juliandday()函數
SQLite julianday()
函數應用修飾符,然後將日期作爲輸入日期後的儒略日(Julian day,JD)返回。
儒略日(Julian day,JD)是指由公元前4713年1月1日,協調世界時中午12時開始所經過的天數,多爲天文學家採用,用以作爲天文學的單一曆法,把不同曆法的年表統一起來。如果計算相隔若干年的兩個日期之間間隔的天數,利用儒略日就比較方便。
語法:
julianday(timestring [, modifier1, modifier2, ... modifier_n ] )
示例1:
檢索當前日期:
SELECT julianday('2017-09-13');
SELECT julianday('2017-09-13 16:45');
SELECT julianday('2017-09-13 16:45:30');
SELECT julianday('now');
執行上面代碼,得到以下結果 -
sqlite> SELECT julianday('2017-09-13');
2458009.5
sqlite> SELECT julianday('2017-09-13 16:45');
2458010.19791667
sqlite> SELECT julianday('2017-09-13 16:45:30');
2458010.19826389
sqlite> SELECT julianday('now');
2457898.09934488
sqlite>
示例2:
檢索本月的第一天:
SELECT julianday('2017-07-13', 'start of month');
SELECT julianday('now', 'start of month');
SELECT julianday('2017-08-15', '-6 days');
SELECT julianday('now', '-6 days');
執行上面查詢語句,得到以下結果 -
sqlite> SELECT julianday('2017-07-13', 'start of month');
2457935.5
sqlite> SELECT julianday('now', 'start of month');
2457874.5
sqlite> SELECT julianday('2017-08-15', '-6 days');
2457974.5
sqlite> SELECT julianday('now', '-6 days');
2457892.10142766
sqlite>
示例3:
檢索本月的最後一天:
SELECT julianday('2017-09-07', 'start of month', '+1 month', '-1 day');
SELECT julianday('now', 'start of month', '+1 month', '-1 day');
SELECT julianday('2017-09-07', '+24 days');
SELECT julianday('now', '+24 days');
執行上面代碼,得到以下結果 -
sqlite> SELECT julianday('2017-09-07', 'start of month', '+1 month', '-1 day');
2458026.5
sqlite> SELECT julianday('now', 'start of month', '+1 month', '-1 day');
2457904.5
sqlite> SELECT julianday('2017-09-07', '+24 days');
2458027.5
sqlite> SELECT julianday('now', '+24 days');
2457922.10232523
sqlite>
示例4:
在當前日期上添加/減去年數和天數:
SELECT julianday('2017-09-14', '+2 years');
SELECT julianday('now', '+5 years');
SELECT julianday('now', '-7 days');
執行上面代碼,得到以下結果 -
sqlite> SELECT julianday('2017-09-14', '+2 years');
2458740.5
sqlite> SELECT julianday('now', '+5 years');
2459724.10358212
sqlite> SELECT julianday('now', '-7 days');
2457891.10358736
sqlite>