📅  最后修改于: 2023-12-03 15:35:07.678000             🧑  作者: Mango
SQLite是一种轻型的、自包含的数据库管理系统,它支持SQL语言。日期和时间的管理在绝大多数的应用程序中都是非常重要的,SQLite也提供了一些内置的函数和方法来简化这方面的操作。
SQLite中有几个日期相关的函数,下面是其中一些常用的函数。
date
函数用于从一个以秒为单位的整数值中返回一个日期字符串。
SELECT date(1092941466, 'unixepoch') AS 'Date Time';
输出:
| Date Time | |-----------| | 2004-08-19|
说明:
1092941466
是一个以秒为单位的整数值,可以是任何整数。'unixepoch'
表示该时间是从1970-01-01 00:00:00
开始计算的。time
函数用于从一个以秒为单位的整数值中返回一个时间字符串。
SELECT time(1092941466, 'unixepoch') AS 'Time';
输出:
| Time | |-----------| | 14:51:06 |
datetime
函数用于从一个以秒为单位的整数值中返回一个日期和时间字符串。该函数可以接受多种不同格式的日期和时间,如YYYY-MM-DD HH:MM:SS
、YYYYMMDDHHMMSS
等等。
SELECT datetime(1092941466, 'unixepoch') AS 'Date Time';
输出:
| Date Time | |----------------------| | 2004-08-19 14:51:06 |
strftime
函数可以将日期和时间格式化为不同的字符串。它支持多种不同的格式化选项。
SELECT strftime('%s', 'now');
输出:
| strftime('%s', 'now') | |------------------------| | 1633139200 |
说明:
%s
表示将日期格式化为UNIX时间戳,即从1970-01-01 00:00:00
开始的秒数。SQLite支持几种不同的日期列类型,下面是其中一些类型。
DATE
类型用于存储日期,格式为YYYY-MM-DD
。
CREATE TABLE example (
id INTEGER PRIMARY KEY,
date_column DATE
);
TIME
类型用于存储时间,格式为HH:MM:SS
或HH:MM:SS.SSS
。
CREATE TABLE example (
id INTEGER PRIMARY KEY,
time_column TIME
);
DATETIME
类型用于存储日期和时间,格式为YYYY-MM-DD HH:MM:SS
或YYYY-MM-DD HH:MM:SS.SSS
。
CREATE TABLE example (
id INTEGER PRIMARY KEY,
datetime_column DATETIME
);
下面是如何在SQLite中插入日期值的示例。
INSERT INTO example(date_column, time_column, datetime_column)
VALUES ('2021-10-01', '10:00:00', '2021-10-01 10:00:00');
下面是如何在SQLite中查询日期值的示例。
SELECT *
FROM example
WHERE date_column >= '2021-10-01' AND date_column <= '2021-10-31';