SQLite time() 时间函数
SQLite 时间函数 time() 以 HH:MM:SS 格式返回时间,默认返回的是格林威治时间
time(timestring, modifier, modifier, ...)
此函数相当于
strftime('%H:%M:%S',timestring, modifier, modifier, ...)
| 参数 | 说明 |
|---|---|
| timestring | 字符串格式的时间,可选值有 now 或者如果是数字字符串,则返回 '12:00:00' 如果是其它格式的字符串,则必须是 SQLite 支持的日期时间格式 |
| modifier | 修饰符,会改变返回的返回的日期 |
日期时间格式
time() 支持的日期时间格式有
以 2018 年 1 月 2 日 3 点 4 分 5 秒 600 毫秒 为例
| 日期时间格式 | 范例 |
|---|---|
| YYYY-MM-DD | 2018-01-02 |
| YYYY-MM-DD HH:MM | 2018-01-02 03:04 |
| YYYY-MM-DD HH:MM:SS.SSS | 2018-01-02 03:04:05.600 |
| MM-DD-YYYY HH:MM | 01-02-2018 03:04 |
| HH:MM | 03:04 |
| YYYY-MM-DDTHH:MM | 2018-01-02 03:04 |
| HH:MM:SS | 03:04:05 |
| YYYYMMDD HHMMSS | 20180102 030405 |
| now | 2018-01-02 |
| DDDDDDDDDD | 返回当前时间戳,1523496694160 |
`'T' 是用于分隔日期和时间的文字字符
修饰符
time() 函数中可用的修饰符 modifier 有
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
范例
-
输出当前的时间
SELECT time('now');输出结果如下
time('now') ----------- 01:56:16
默认是格林威治时间
-
如果是数字或者数字字符串,则返回
12:00:00SELECT time(2234);
输出结果如下
time(2234) ---------- 12:00:00
-
输出
2018-01-02 03:04:05的时间SELECT time('2018-01-02 03:04:05');
输出结果如下
time('2018-01-02 03:04:05') --------------------------- 03:04:05
-
如果要将时间转换为本地时间,可以使用
localtime修饰符SELECT time('12:28', 'localtime');
输出结果如下
time('12:28', 'localtime') -------------------------- 20:28:00
-
如果要将本地时间转换为格林威治时间(utc),可以使用
utc修饰符SELECT time('12:28', 'utc');
输出结果如下
time('12:28', 'utc') -------------------- 04:28:00