在 MariaDB 中从日期值中减去一年
本文给出了一个在 MariaDB 中从一个给定的日期种减去一年的示例。
发布于
在 MariaDB 中,要从一个日期中减去一年,您可以使用 SUBDATE()
函数或者减法运算符。
下面给出了几个示例。
示例 1:SUBDATE()
函数
下面的语句使用 SUBDATE()
函数从一个指定日期减去 1 年:
SELECT SUBDATE('2022-12-13', INTERVAL 1 YEAR);
输出:
+----------------------------------------+
| SUBDATE('2022-12-13', INTERVAL 1 YEAR) |
+----------------------------------------+
| 2021-12-13 |
+----------------------------------------+
下面的语句使用 SUBDATE()
函数从当前日期减去 1 年:
SELECT SUBDATE(CURDATE(), INTERVAL 1 YEAR);
输出:
+-------------------------------------+
| SUBDATE(CURDATE(), INTERVAL 1 YEAR) |
+-------------------------------------+
| 2021-12-13 |
+-------------------------------------+
这里, INTERVAL 1 YEAR
表示 1 年。如果您想减去多年,比如 10 年,您只需要将 1 更改为 10,如下:
SELECT SUBDATE(CURDATE(), INTERVAL 10 YEAR);
输出:
+--------------------------------------+
| SUBDATE(CURDATE(), INTERVAL 10 YEAR) |
+--------------------------------------+
| 2012-12-13 |
+--------------------------------------+
示例 2:DATE_SUB()
函数
DATE_SUB()
函数与 SUBDATE
函数用法完全相同。
下面的语句使用 DATE_SUB()
函数从一个指定日期减去 1 年:
SELECT DATE_SUB('2022-12-13', INTERVAL 1 YEAR);
输出:
+-----------------------------------------+
| DATE_SUB('2022-12-13', INTERVAL 1 YEAR) |
+-----------------------------------------+
| 2021-12-13 |
+-----------------------------------------+
示例 3:ADDDATE()
函数
ADDDATE()
函数与 SUBDATE
函数是相反的,用于在指定日期上加指定的时间段。如果要减去一段时间,只需要传入一个负值。
下面的语句使用 ADDDATE()
函数从一个指定日期减去 1 年:
SELECT ADDDATE('2022-12-13', INTERVAL -1 YEAR);
输出:
+-----------------------------------------+
| ADDDATE('2022-12-13', INTERVAL -1 YEAR) |
+-----------------------------------------+
| 2021-12-13 |
+-----------------------------------------+
示例 4: 加减运算符
MariaDB 允许您直接使用加减法运算符 -
对日期/日期时间进行计算。
下面的语句使用减法实现了 '2022-12-13'
减去 1 年:
SELECT '2022-12-13' - INTERVAL 1 YEAR;
输出:
+--------------------------------+
| '2022-12-13' - INTERVAL 1 YEAR |
+--------------------------------+
| 2021-12-13 |
+--------------------------------+
当然,您也可以使用加法运算符。并且只需要将 INTERVAL 值改为负数。
下面的语句使用加法实现了 '2022-12-13'
减去 1 年:
SELECT '2022-12-13' + INTERVAL -1 YEAR;
输出:
+---------------------------------+
| '2022-12-13' + INTERVAL -1 YEAR |
+---------------------------------+
| 2021-12-13 |
+---------------------------------+
结论
本文给出了几个方法来从一个指定的日期减去一年。