SQLite中的日期和时间类型和函数:SQLite 是一个关系数据库管理系统 (RDMS),它的架构非常简单,因为它没有服务器,并且将数据存储在运行它的本地机器的操作系统上。SQLite 支持不同的日期和时间功能,可以帮助相应地管理日期和时间。每个数据库管理系统都有 DateTime 数据类型、函数或两者都有。
SQLite日期和时间函数:在这篇文章中,我们将借助示例详细讨论 DateTime 数据类型和函数。
SQLite中日期时间的数据类型
数据库使用术语数据类型来表示可以存储在其中的数据格式,例如,SQLite 支持 Integer、Text、Blob 和 Real 数据类型。SQLite 不像 MySQL 那样支持存储日期和时间的数据类型,而是包含多种内置函数(),用于使用数据类型存储日期和时间;整数、实数和文本。
SQLite中日期时间的函数
这些函数采用不同数量的输入并按照指定的过程返回单个输出。有很多内置的functions() 用于获取一些特定的结果,例如DateTime 函数。
SQLite 中日期和时间函数的类型
SQLite 中使用了五种不同类型的内置函数来存储和执行任务:
- date()
- time()
- datetime()
- julianday()
- strftime()
这些功能通过实例一一详细讲解。
SQLite 中的 date() 函数
SQLite日期和时间函数:date() 函数用于获取格式为 YYYY-MM-DD 的日期。我们还可以通过加减日、月、年来修改日期,或者我们可以在函数执行时获取日期。
SQLite如何使用日期和时间函数?使用 date() 的一般语法是:
DATE(date-time-string, [modifier1, modifier2…, modifierN]);
在上面的语法中,日期时间字符串是包含要应用函数的日期的字符串,修饰符是必须执行年、月和日的减法或加法的任务。
如果我们要获取当前日期,我们使用输入参数“now”,例如,运行以下命令:
SELECT DATE('now');
SQLite日期和时间函数用法示例:如果我们只想通过在输入参数中提供日期和时间来提取日期,我们将使用该函数:
SELECT DATE('2021-10-06 12:54:12') AS 'DATE()';
如果我们想获取当月的最后一天,我们将运行以下命令:
SELECT DATE('now','start of month','+1 month','-1 day') AS 'Last Date of the Month';
SQLite如何使用日期和时间函数?我们可以使用函数 date() 在任何日期中添加月、年和日。例如,我们使用 date() 将九年添加到当前日期,如下所示:
SELECT DATE('now','+9 year');
同样,我们也可以减去月、年和日期,例如,现在月份是 10 月,我们可以使用以下方法获得 3 个月的日期:
SELECT DATE('now','-3 month');
SQLite 中的 time() 函数
SQLite中的日期和时间类型和函数:time() 函数用于获取格式为HH:MM:SS 的时间。我们还可以通过添加/减去小时、分钟和秒来修改时间,或者我们可以在函数执行时获取当前时间。
使用 time() 的一般语法是:
TIME(date-time-string, [modifier1, modifier2…, modifierN]);
在上面的语法中,日期时间字符串是包含要应用函数的日期的字符串,而修饰符是必须执行时、分和秒的减法或加法的任务。
如果我们想获取当前时间,我们使用输入参数“now”,例如,运行以下命令:
SELECT TIME('now');
如果我们想通过在输入参数中提供日期和时间来仅获取提取时间,我们将使用该函数:
SELECT TIME('2021-10-06 06:05:45') AS 'TIME()';
如果我们想获取当前时间十五分钟之后的时间,我们将运行以下命令:
SELECT TIME(),TIME('now','+15 minutes');
输出显示当前时间以及十五分钟后的时间,因为我们运行了两个函数,一个是使用 time() 的当前时间,另一个是使用 time('now','+15分钟')。类似地,我们可以从当前时间获得四小时之前的时间:
SELECT TIME('now','-4 hours');
SQLite 中的函数 datetime()
SQLite日期和时间函数:datetime() 函数用于获取格式为 YYYY:MM:DD HH:MM:SS 的时间。我们还可以通过添加/减去年、月、日、小时、分钟和秒来修改日期和时间,或者我们可以在执行函数时获取当前日期和时间。
SQLite日期和时间函数用法示例:使用 datetime() 的一般语法是:
datetime(date-time-string, [modifier1, modifier2…, modifierN]);
SQLite如何使用日期和时间函数?在上面的语法中,日期时间字符串是一个包含日期或时间的字符串,函数将在其上应用,修饰符是一个任务,必须执行分钟、秒、小时、天的减法或加法、年和月。
要显示当前日期和时间,在执行时,我们将运行以下命令:
SELECT datetime('now');
现在我们有一个表 Employee,要显示该表,执行以下命令:
SELECT * FROM Employee;
现在,如果我们想找出员工有资格获得第一个增量的日期。根据公司的政策,在加入之日起六个月后应奖励增量,因此将执行以下SQLite查询:
SELECT emp_id, emp_name, joining_date, DATE(joining_date,'6 months') AS 'Appraisal date' FROM Employee;
在输出中,我们可以看到员工获得第一次加薪的日期。
SQLite 中的 julianday() 函数
SQLite中的日期和时间类型和函数:julianday() 函数有助于找出一年中的儒略日,该函数的一般语法如下:
julianday(date-time-string, [modifier1, modifier2…, modifierN])
与时间和日期函数的语法类似,它也接受两个参数并返回一个输入。让我们举一个例子来计算一个人出生后的总天数;如果一个人出生在 1995 年 8 月 20 日,那么使用 julianday() 函数可以很容易地显示到今天的总天数:
SELECT julianday('now') - julianday('1995-08-20');
输出显示,一个人大约活了 9544 天。
SQLite 中的 strftime() 函数
SQLite日期和时间函数:strftime() 函数用于转换日期或时间字符串,得到格式为YYYY:MM:DD HH:MM:SS 的日期和时间。
strftime() 的一般语法是:
strftime(format, date-time-string, [modifier1,modifier2…,modifier]);
上面的语法与之前讨论的语法相同,但其中新的参数是“格式”,可以定义他想要的输出格式。
符号 | 参数 |
---|---|
Y | year |
m | month |
d | date |
S | second |
M | minute |
H | hour |
SQLite如何使用日期和时间函数?例如,我们希望当前日期和时间采用以下格式 MM:YYYY:DD SS:MM:HH,我们将运行以下命令:
SELECT strftime('%m/%Y/%d %S/%M/%H','now');
SQLite日期和时间函数用法示例:现在我们要以这种格式显示日期和时间,YYYY:MM HH:MM,因此执行命令为:
SELECT strftime('%Y/%m %H/%M','now');
SQLite中日期的范围是从0000-01-01到9999-12-31,格式为Year-Month-Date。同样,时间范围为 00:00:00 到 23:59:59,格式为小时:分钟:秒。
SQLite中的日期和时间类型和函数用法结论
SQLite 与其他数据库一样,提供了多种内置函数,使其易于用于不同的应用程序。日期和时间函数帮助我们轻松处理实时不同任务中的日期和时间。这篇文章与 SQLite 中用于管理它们的日期和时间功能有关。在这篇文章中,所有类型的日期和时间函数都与示例一起解释,并描述了这些函数适用的日期和时间函数的范围。