📜  SQLite日期(1)

📅  最后修改于: 2023-12-03 15:35:07.678000             🧑  作者: Mango

SQLite日期

SQLite是一种轻型的、自包含的数据库管理系统,它支持SQL语言。日期和时间的管理在绝大多数的应用程序中都是非常重要的,SQLite也提供了一些内置的函数和方法来简化这方面的操作。

SQLite日期函数

SQLite中有几个日期相关的函数,下面是其中一些常用的函数。

date函数

date函数用于从一个以秒为单位的整数值中返回一个日期字符串。

SELECT date(1092941466, 'unixepoch') AS 'Date Time';

输出:

| Date Time | |-----------| | 2004-08-19|

说明:

  • 1092941466是一个以秒为单位的整数值,可以是任何整数。
  • 'unixepoch'表示该时间是从1970-01-01 00:00:00开始计算的。

time函数

time函数用于从一个以秒为单位的整数值中返回一个时间字符串。

SELECT time(1092941466, 'unixepoch') AS 'Time';

输出:

| Time | |-----------| | 14:51:06 |

datetime函数

datetime函数用于从一个以秒为单位的整数值中返回一个日期和时间字符串。该函数可以接受多种不同格式的日期和时间,如YYYY-MM-DD HH:MM:SSYYYYMMDDHHMMSS等等。

SELECT datetime(1092941466, 'unixepoch') AS 'Date Time';

输出:

| Date Time | |----------------------| | 2004-08-19 14:51:06 |

strftime函数

strftime函数可以将日期和时间格式化为不同的字符串。它支持多种不同的格式化选项。

SELECT strftime('%s', 'now');

输出:

| strftime('%s', 'now') | |------------------------| | 1633139200 |

说明:

  • %s表示将日期格式化为UNIX时间戳,即从1970-01-01 00:00:00开始的秒数。
SQLite日期列类型

SQLite支持几种不同的日期列类型,下面是其中一些类型。

DATE类型

DATE类型用于存储日期,格式为YYYY-MM-DD

CREATE TABLE example (
    id INTEGER PRIMARY KEY,
    date_column DATE
);

TIME类型

TIME类型用于存储时间,格式为HH:MM:SSHH:MM:SS.SSS

CREATE TABLE example (
    id INTEGER PRIMARY KEY,
    time_column TIME
);

DATETIME类型

DATETIME类型用于存储日期和时间,格式为YYYY-MM-DD HH:MM:SSYYYY-MM-DD HH:MM:SS.SSS

CREATE TABLE example (
    id INTEGER PRIMARY KEY,
    datetime_column DATETIME
);
SQLite日期插入值

下面是如何在SQLite中插入日期值的示例。

INSERT INTO example(date_column, time_column, datetime_column)
VALUES ('2021-10-01', '10:00:00', '2021-10-01 10:00:00');
SQLite日期查询

下面是如何在SQLite中查询日期值的示例。

SELECT *
FROM example
WHERE date_column >= '2021-10-01' AND date_column <= '2021-10-31';