MariaDB DATE_SUB() 函数的基础用法与实例
MariaDB DATE_SUB()
函数是一个日期函数,用于在一个日期或时间值的基础上减少一个指定的时间间隔,返回一个新的日期或时间值。
MariaDB DATE_SUB()
函数是一个日期函数,用于在一个日期或时间值的基础上减少一个指定的时间间隔,返回一个新的日期或时间值。该函数可以用于处理日期、时间、日期时间、年月等类型的数据。
语法
MariaDB DATE_SUB()
函数的语法如下:
DATE_SUB(date, INTERVAL expr unit)
其中,date
是一个日期或时间值,可以是一个常量、变量或表达式。INTERVAL expr unit
是一个时间间隔,由一个表达式 expr
和一个单位 unit
组成。expr
可以是一个正数或负数,表示减少或增加的时间量。unit
可以是以下值之一:
MICROSECOND
:微秒,范围是 0 到 999999。SECOND
:秒,范围是 0 到 59。MINUTE
:分钟,范围是 0 到 59。HOUR
:小时,范围是 0 到 23。DAY
:天,范围是 0 到 31。WEEK
:周,范围是 0 到 53。MONTH
:月,范围是 0 到 12。QUARTER
:季度,范围是 0 到 4。YEAR
:年,范围是 0 到 9999。SECOND_MICROSECOND
:秒和微秒,格式是ss.ssssss
。MINUTE_MICROSECOND
:分钟和微秒,格式是mm:ss.ssssss
。MINUTE_SECOND
:分钟和秒,格式是mm:ss
。HOUR_MICROSECOND
:小时和微秒,格式是hh:mm:ss.ssssss
。HOUR_SECOND
:小时和秒,格式是hh:mm:ss
。HOUR_MINUTE
:小时和分钟,格式是hh:mm
。DAY_MICROSECOND
:天和微秒,格式是dd hh:mm:ss.ssssss
。DAY_SECOND
:天和秒,格式是dd hh:mm:ss
。DAY_MINUTE
:天和分钟,格式是dd hh:mm
。DAY_HOUR
:天和小时,格式是dd hh
。YEAR_MONTH
:年和月,格式是yyyy-mm
。
实例
下面给出一些使用 MariaDB DATE_SUB()
函数的实例,以及相应的代码和输出结果。
在一个日期上减少一定的天数
假设我们有一个日期值 2024-02-16
,我们想要在这个日期上减少 10 天,得到一个新的日期值。我们可以使用以下 SQL 语句:
SELECT DATE_SUB('2024-02-16', INTERVAL 10 DAY) AS new_date;
输出结果如下:
+------------+
| new_date |
+------------+
| 2024-02-06 |
+------------+
这个实例说明了如何使用 DATE_SUB()
函数在一个日期上减少一个以天为单位的时间间隔,返回一个新的日期值。
在一个日期时间上减少一定的小时和分钟
假设我们有一个日期时间值 2024-02-16 08:57:33
,我们想要在这个日期时间上减少 2 小时和 15 分钟,得到一个新的日期时间值。我们可以使用以下 SQL 语句:
SELECT DATE_SUB('2024-02-16 08:57:33', INTERVAL '2:15' HOUR_MINUTE) AS new_datetime;
输出结果如下:
+---------------------+
| new_datetime |
+---------------------+
| 2024-02-16 06:42:33 |
+---------------------+
这个实例说明了如何使用 DATE_SUB()
函数在一个日期时间上减少一个以小时和分钟为单位的时间间隔,返回一个新的日期时间值。
在一个日期上增加一定的周数
假设我们有一个日期值 2024-02-16
,我们想要在这个日期上增加 3 周,得到一个新的日期值。我们可以使用以下 SQL 语句:
SELECT DATE_SUB('2024-02-16', INTERVAL -3 WEEK) AS new_date;
输出结果如下:
+------------+
| new_date |
+------------+
| 2024-03-08 |
+------------+
这个实例说明了如何使用 DATE_SUB()
函数在一个日期上增加一个以周为单位的时间间隔,返回一个新的日期值。注意,我们使用了一个负数的表达式来表示增加的时间量。
相关函数
除了 DATE_SUB()
函数,MariaDB 还提供了以下与日期和时间相关的函数:
DATE_ADD()
函数:用于在一个日期或时间值的基础上增加一个指定的时间间隔,返回一个新的日期或时间值。其语法和用法与DATE_SUB()
函数类似,只是方向相反。SUBDATE()
函数:与DATE_SUB()
函数完全等价,只是名称不同。ADDDATE()
函数:与DATE_ADD()
函数完全等价,只是名称不同。DATE_FORMAT()
函数:用于将一个日期或时间值按照指定的格式进行转换,返回一个格式化后的字符串值。STR_TO_DATE()
函数:用于将一个字符串值按照指定的格式转换为一个日期或时间值,返回一个日期或时间值。
结论
本文介绍了 MariaDB DATE_SUB()
函数的基础用法与实例,该函数用于在一个日期或时间值的基础上减少一个指定的时间间隔,返回一个新的日期或时间值。该函数可以处理不同类型和单位的日期和时间数据,可以用于实现各种日期和时间的计算和转换。