SQLite 日期 & 时间
SQLite 中的日期和时间支持以下几种格式
我们以 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' 是用于分隔日期和时间的文字字符
SQLite 日期 & 时间函数
SQLite 支持以下五个日期和时间函数
函数 | 说明 |
---|---|
date(timestring, modifier, modifier, ...) | 以 YYYY-MM-DD 格式返回日期 |
time(timestring, modifier, modifier, ...) | 以 HH:MM:SS 格式返回时间 |
datetime(timestring, modifier, modifier, ...) | 以 YYYY-MM-DD HH:MM:SS 格式返回日期时间 |
julianday(timestring, modifier, modifier, ...) | 返回从格林尼治时间的公元前 4714 年 11 月 24 日正午算起的天数 |
strftime(format, timestring, modifier, modifier, ...) | 根据第一个参数指定的格式字符串返回日期 |
这五个日期和时间函数把时间字符串作为参数
时间字符串后可以跟零个或多个 modifier
修饰符
修饰符 ( 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()
来格式化任何日期和时间
您可以使用以下的替换来格式化日期和时间:
替换 | 描述 |
---|---|
%d | 一月中的第几天,01-31 |
%f | 带小数部分的秒,SS.SSS |
%H | 小时,00-23 |
%j | 一年中的第几天,001-366 |
%J | 儒略日数,DDDD.DDDD |
%m | 月,00-12 |
%M | 分,00-59 |
%s | 从 1970-01-01 算起的秒数 |
%S | 秒,00-59 |
%w | 一周中的第几天,0-6 (0 is Sunday) |
%W | 一年中的第几周,01-53 |
%Y | 年,YYYY |
%% | % 字符 |