支持下面5个时间和日期函数:
上述五个日期和时间函数把时间字符串作为参数。时间字符串后跟零个或多个 modifier 修饰符。
strftime() 函数也可以把格式字符串 format 作为其第一个参数
时间字符串:
一个时间字符串可以采用下面任何一种格式(可以使用 "T" 作为分隔日期和时间的文字字符):
修饰符(Modifier):
时间字符串后边可跟着零个或多个的修饰符,这将改变有上述五个函数返回的日期和/或时间。任何上述五大功能返回时间。修饰符应从左到右使用,下面列出了可在 SQLite 中使用的修饰符:
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
格式化:
SQLite 提供了非常方便的函数 strftime() 来格式化任何日期和时间。您可以使用以下的替换来格式化日期和时间:
实例:
请看下面实例:
-- 计算当前日期
select date('now');
-- 计算当前月份的最后一天 -- now 后面接的是几个修饰符,
-- 'start of month' 当前月份开始
-- '+1 month', 当前月份加一个月
-- '-1 day' 减一天
select date('now','start of month','+1 month','-1 day');
-- 所以这个是上个月的第2天
select date('now','start of month','-1 month','+1 day');
-- 所以这个是今年的最后一天, 当前年加一年再减一天,就是今年的最后一天
select date('now','start of year','+1 year','-1 day');
-- 计算给定时间戳1992241466的日期和时间
select datetime('1992241466', 'unixepoch');
-- 计算新中国成立到现再的天数
select julianday('now') - julianday('1949-10-01');
-- 计算当年9月的第一个星期2的日期
select date('now', 'start of year','+8 months','weekday 2');
-- 在UTC与本地时间之间进行转化,当格式化日期时,用utc修饰符或localtime修饰符
select time('12:00', 'localtime');
select time('12:00', 'utc');
-- 计算当前时间
select datetime('now');
select datetime('now', '+8 hour'); -- 北京在东八区 这个才是北京时间
-- 当天的最后一秒
select datetime('now', 'start of day', '+1 day', '-1 seconds');
1. 请显示明年的第6个月的第3天。