Python中的SQLite3数据库是一个轻量级的关系型数据库,拥有丰富的日期和时间函数,可以方便的处理日期和时间相关的操作。下面就来介绍一下这些函数的用法。
1. date函数
date(timestring, modifier, modifier, ...)
date函数可以用来把字符串转换成日期,timestring是一个日期字符串,modifier是一个可选的参数,用来修改输出的日期格式,可以接受多个参数,如果不指定参数,则返回一个默认格式的日期。示例如下:
SELECT date('2018-01-01');
2018-01-01
SELECT date('2018-01-01', 'start of month');
2018-01-01 00:00:00
SELECT date('2018-01-01', 'start of month', '+1 month');
2018-02-01 00:00:00
SELECT date('2018-01-01', 'start of month', '+1 month', '-1 day');
2017-12-31 00:00:00
2. time函数
time(timestring, modifier, modifier, ...)
time函数用来把字符串转换成时间,timestring是一个时间字符串,modifier是一个可选的参数,用来修改输出的时间格式,可以接受多个参数,如果不指定参数,则返回一个默认格式的时间。示例如下:
SELECT time('12:00:00');
12:00:00
SELECT time('12:00:00', 'start of hour');
12:00:00
SELECT time('12:00:00', 'start of hour', '+1 hour');
13:00:00
SELECT time('12:00:00', 'start of hour', '+1 hour', '-1 second');
12:59:59
3. datetime函数
datetime(timestring, modifier, modifier, ...)
datetime函数用来把字符串转换成日期时间,timestring是一个日期时间字符串,modifier是一个可选的参数,用来修改输出的日期时间格式,可以接受多个参数,如果不指定参数,则返回一个默认格式的日期时间。示例如下:
SELECT datetime('2018-01-01 12:00:00');
2018-01-01 12:00:00
SELECT datetime('2018-01-01 12:00:00', 'start of month');
2018-01-01 00:00:00
SELECT datetime('2018-01-01 12:00:00', 'start of month', '+1 month');
2018-02-01 00:00:00
SELECT datetime('2018-01-01 12:00:00', 'start of month', '+1 month', '-1 second');
2017-12-31 23:59:59
4. julianday函数
julianday(timestring, modifier, modifier, ...)
julianday函数用来把字符串转换成儒略日,timestring是一个日期时间字符串,modifier是一个可选的参数,用来修改输出的日期时间格式,可以接受多个参数,如果不指定参数,则返回一个默认格式的儒略日。示例如下:
SELECT julianday('2018-01-01');
2458120.5
SELECT julianday('2018-01-01', 'start of month');
2458120.0
SELECT julianday('2018-01-01', 'start of month', '+1 month');
2458150.0
SELECT julianday('2018-01-01', 'start of month', '+1 month', '-1 second');
2458149.999988426
5. strftime函数
strftime(format, timestring, modifier, modifier, ...)
strftime函数用来把字符串转换成指定格式的字符串,format是一个指定的格式,timestring是一个日期时间字符串,modifier是一个可选的参数,用来修改输出的日期时间格式,可以接受多个参数,如果不指定参数,则返回一个指定格式的字符串。示例如下:
SELECT strftime('%Y-%m-%d', '2018-01-01');
2018-01-01
SELECT strftime('%Y-%m-%d %H:%M:%S', '2018-01-01', 'start of month');
2018-01-01 00:00:00
SELECT strftime('%Y-%m-%d %H:%M:%S', '2018-01-01', 'start of month', '+1 month');
2018-02-01 00:00:00
SELECT strftime('%Y-%m-%d %H:%M:%S', '2018-01-01', 'start of month', '+1 month', '-1 second');
2017-12-31 23:59:59
以上就是Python中SQLite3数据库日期和时间常见