Sqlite Datetime类型详解
日期和时间函数
date(timestring, modifier, modifier, ...)
time(timestring, modifier, modifier, ...)
datetime(timestring, modifier, modifier, ...)
julianday(timestring, modifier, modifier, ...)
strftime(format, timestring, modifier, modifier, ...)
date 获取日期,time 获取时间,datetime获取日期时间,julianday获取日期所对应的Julian day(儒略日),儒略日就是当前日期距离公元前4713年1月1日的天数,可以为小数。strftime可以将日期时间设定为指定格式,格式由format指定,可选值如下:
%d day of month: 00 %f fractional seconds: SS.SSS %H hour: 00-24 %j day of year: 001-366 %J Julian day number %m month: 01-12 %M minute: 00-59 %s seconds since 1970-01-01 %S seconds: 00-59 %w day of week 0-6 with Sunday==0 %W week of year: 00-53 %Y year: 0000-9999 %% %
timestring可选值:
YYYY-MM-DD YYYY-MM-DD HH:MM YYYY-MM-DD HH:MM:SS YYYY-MM-DD HH:MM:SS.SSS YYYY-MM-DDTHH:MM YYYY-MM-DDTHH:MM:SS YYYY-MM-DDTHH:MM:SS.SSS HH:MM HH:MM:SS HH:MM:SS.SSS now DDDDDDDDDD
Modifiers可选值
NNN days
NNN hours
NNN minutes
NNN.NNNN seconds
NNN months
NNN years
start of month
start of year
start of day
weekday N
unixepoch
localtime
utc
Modifiers可以任意多个,具体用法见下
举例
获取昨天的日期
select date('now','localtime','-1 days')
输出:2016-01-29
获取现在的时间
select time('now','localtime') select time('now','localtime','1 hours','-1 hours') 输出:22:28:06
获取现在的日期时间对应的儒略日
select julianday('now','localtime') 输出:2457418.43836682
获取儒略日为2457418.5对应的日期时间
select datetime('2457418.5') 输出:2016-01-31 00:00:00
获取这周的第三天所对应的日期
select date('now','weekday 3') 输出:2016-02-03
获取Unix时间戳
select strftime('%s','now','localtime') 输出:1454193429