SQLite time()函数

SQLite time()函数

SQLite time()函数用于计算“HH-MM-SS”格式的时间并返回时间。

语法:

time(timestring, [ modifier1, modifier2, ... modifier_n ] )

这里,timestring是一个日期值,可以是以下任何一个:

编号 timestring的值 描述
1 now 用来返回当前日期的字面值
2 YYYY-MM-DD 指定格式为YYYY-MM-DD的日期值
3 YYYY-MM-DD HH:MM 指定格式为YYYY-MM-DD HH:MM的日期值
4 YYYY-MM-DD HH:MM:SS 指定格式为YYYY-MM-DD HH:MM:SS的日期值
5 YYYY-MM-DD HH:MM:SS.SSS 指定格式为YYYY-MM-DD HH:MM:SS.SSS的日期值
6 HH:MM 指定格式为HH:MM的日期值
7 HH:MM:SS 指定格式为HH:MM:SS的日期值
8 HH:MM:SS.SSS 指定格式为HH:MM:SS.SSS的日期值
9 YYYY-MM-DDTHH:MM 指定格式化为YYYY-MM-DDTHH:MM的日期值,其中T是一个文本字符分隔符,用于分隔日期和时间。
10 YYYY-MM-DDTHH:MM:SS 指定格式化为YYYY-MM-DDTHH:MM:SS的日期值,其中T是一个文本字符分隔符,用于分隔日期和时间。
11 YYYY-MM-DDTHH:MM:SS.SSS 指定格式化为YYYY-MM-DDTHH:MM:SS.SSS的日期值,其中T是一个文本字符分隔符,用于分隔日期和时间。
12 DDDDDDDDDD 指定儒略日的日期数
  • modifier1, modifier2, … modifier_n: 这些修饰符是可选的。这些字符与时间字符串一起使用来添加或减少时间,日期或年份。
编号 修辞符 描述
1 [+-]NNN years 用于指定添加/减去日期的年数
2 [+-]NNN months 用于指定添加/减去日期的月数
3 [+-]NNN days 用于指定添加/减去日期的天数
4 [+-]NNN hours 用于指定添加/减去日期的小时数
5 [+-]NNN minutes 用于指定添加/减去日期的分钟数
6 [+-]NNN seconds 用于指定添加/减去日期的秒数
7 [+-]NNN.NNNN seconds 用于指定添加/减去日期的秒数(和小数秒)
8 start of year 用于将日期重新转移到年初
9 start of month 用于将日期重新转移到月初
10 start of day 用于将日期重新移动到一天的开始
11 weekday N 用于将日期向前移动到工作日数为N的下一个日期(0=Sunday, 1=Monday, 2=Tuesday, 3=Wednesday, 4=Thursday, 5=Friday, 6=Saturday)
12 unixepoch 它与DDDDDDDDDD时间字符串一起用于将日期解释为UNIX时间(即:自1970-01-01以来的秒数)
13 localtime 用于将日期调整为本地时间,假设时间戳以UTC表示
14 utc 它用于将日期调整为utc,假设时间戳以本地时间表达

示例1:

检索当前时间值:

SELECT time('now');

执行上面语句,得到以下结果 -

sqlite> SELECT time('now');
19:14:05
sqlite>

示例2:

在当前时间上添加/减去小时数和分钟数:

SELECT time('now');
SELECT time('11:23:02','-2 hours');  
SELECT time('now','+5 hours');  
SELECT time('11:15:02','+15 minutes');  
SELECT time('now','-30 minutes');

执行上面代码,得到以下结果 -

sqlite> SELECT time('now');
15:15:33
sqlite> SELECT time('11:23:02','-2 hours');
09:23:02
sqlite> SELECT time('now','+5 hours');
20:15:33
sqlite> SELECT time('11:15:02','+15 minutes');
11:30:02
sqlite> SELECT time('now','-30 minutes');
14:45:34
sqlite>

目录

SQLite主键