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>

上一篇:SQLite datetime()函数

下一篇:SQLite now函数和时间格式化

关注微信小程序
程序员编程王-随时随地学编程

扫描二维码
程序员编程王

扫一扫关注最新编程教程