SQLite
date()函数将通过一个时间值和修饰符指定的时间值转为一个
YYYY-MM-DD格式的日期字符串。
date()
语法
这里是 SQLite
date()的语法:
date(time_value [, modifier, modifier, ...])
参数
time_value
可选的。时间值。时间值可以采用以下任何格式,如下所示。该值通常是一个字符串,但在格式为 12 的情况下,它可以是整数或浮点数。
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.dddddd- 带小数部分的儒略历日期数
modifier
可选的。您可以使用零个或多个更改时间值。多个修饰符从左到右按照顺序应用。您可以使用如下的修饰符:
NNN days- 时间值
time_value加上
NNN天
NNN hours- 时间值
time_value加上
NNN小时
NNN minutes- 时间值
time_value加上
NNN分钟
NNN.NNNN seconds- 时间值
time_value加上
NNN.NNNN秒
NNN months- 时间值
time_value加上
NNN个月
NNN years- 时间值
time_value加上
NNN年
start of month- 回退到时间值
time_value的月初
start of year- 回退到时间值
time_value的年初
start of day- 回退到时间值
time_value当天的开始
weekday N- 将时间值
time_value前进到工作日
N
unixepoch- Unix 时间戳
julianday- 返回儒略历
auto
localtime- 返回当前时间
utc- 返回 utc 时间
NNN表示一个数字。 可以是整数或者负数。 如果
NNN是负数,则表示减去。
返回值
SQLite
date()函数返回一个
YYYY-MM-DD格式的日期字符串。如果不提供任何参数,
date()函数返回当前的日期。
date()
示例
这里列举了一些示例以展示 SQLite
date()函数的常用的用法。
使用 SQLite
date()函数获取当前日期:
SELECT date();
date()----------2022-07-26
或者,您可以使用带有时间值
'now'的 SQLite
date()函数获取当前日期:
SELECT date('now'); date('now')-----------2022-07-26使用 SQLite
date()函数获取当年的第一天:
SELECT date('now', 'start of year'); date('now', 'start of year')----------------------------2022-01-01使用 SQLite
date()函数获取当年的最后一天:
SELECT date('now', 'start of year', '1 year', '-1 day'); date('now', 'start of year', '1 year', '-1 day')------------------------------------------------2022-12-31使用 SQLite
date()函数获取当年的母亲节:
SELECT date('now', 'start of year', '4 months', 'weekday 0', '7 days'); date('now', 'start of year', '4 months', 'weekday 0', '7 day------------------------------------------------------------2022-05-08我们知道,母亲节是每年 5 月的第二个星期日。
为了得到它,我们使用了时间值
'now',然后分别使用了几个修饰符:
'start of year',
'4 months',
'weekday 0',
'7 days',那么
date()函数的计算过程如下:
'now'- 获取当前时间
'start of year'- 将当前时间回退到当年的第一天,也就是
2022-01-01
'4 months'- 从当年的第一天的基础上加上 4 个月,也就是
2022-05-01
'weekday 0'- 从
2022-05-01开始获取第一个星期日,也就是
2022-05-01
'7 days'- 从第一个星期日加上 7 天,也就是 5 月的第二个星期日,得到结果
2022-05-08
