MariaDB ADD_MONTHS() 函数的基础用法与实例

MariaDB ADD_MONTHS() 函数是一个日期函数,它用于返回一个日期加上指定月份数后的结果。

发布于

MariaDB ADD_MONTHS() 函数是一个日期函数,它用于返回一个日期加上指定月份数后的结果。该函数可以用于计算日期间隔,或者生成日期序列。

语法

MariaDB ADD_MONTHS() 函数的语法如下:

ADD_MONTHS(date, months)

其中,date 参数是要加上月份数的日期,可以是一个日期或者日期时间值,或者是一个能够转换为日期或者日期时间值的字符串。如果 date 参数不是一个有效的日期或者日期时间值,那么 MariaDB ADD_MONTHS() 函数会返回 NULL

months 参数是要加上的月份数,可以是一个正数或者负数,或者是一个能够转换为数值的字符串。如果 months 参数不是一个数值,那么 MariaDB ADD_MONTHS() 函数会返回 NULL

实例

下面是一些使用 MariaDB ADD_MONTHS() 函数的实例:

实例 1:给一个日期加上一个正数的月份数

SELECT ADD_MONTHS('2024-01-25', 3) AS result;

输出结果如下:

+------------+
| result     |
+------------+
| 2024-04-25 |
+------------+

这个实例中,我们使用 MariaDB ADD_MONTHS() 函数给 '2024-01-25' 这个日期加上 3 个月,得到 2024-04-25 这个日期。

实例 2:给一个日期加上一个负数的月份数

SELECT ADD_MONTHS('2024-01-25', -3) AS result;

输出结果如下:

+------------+
| result     |
+------------+
| 2023-10-25 |
+------------+

这个实例中,我们使用 MariaDB ADD_MONTHS() 函数给 '2024-01-25' 这个日期加上 -3 个月,得到 2023-10-25 这个日期。

实例 3:给一个日期时间值加上一个月份数

SELECT ADD_MONTHS('2024-01-25 09:42:17', 6) AS result;

输出结果如下:

+---------------------+
| result              |
+---------------------+
| 2024-07-25 09:42:17 |
+---------------------+

这个实例中,我们使用 MariaDB ADD_MONTHS() 函数给 '2024-01-25 09:42:17' 这个日期时间值加上 6 个月,得到 2024-07-25 09:42:17 这个日期时间值。

实例 4:给一个非法的日期加上一个月份数

SELECT ADD_MONTHS('2024-02-30', 1) AS result;

输出结果如下:

+--------+
| result |
+--------+
|   NULL |
+--------+

这个实例中,我们使用 MariaDB ADD_MONTHS() 函数给 '2024-02-30' 这个非法的日期加上 1 个月,由于 '2024-02-30' 不是一个有效的日期,所以返回 NULL

实例 5:给一个日期加上一个非数值的月份数

SELECT ADD_MONTHS('2024-01-25', 'a') AS result;

输出结果如下:

+--------+
| result |
+--------+
|   NULL |
+--------+

这个实例中,我们使用 MariaDB ADD_MONTHS() 函数给 '2024-01-25' 这个日期加上 'a' 这个非数值的月份数,由于 'a' 不是一个数值,而且无法转换为数值,所以返回 NULL

相关函数

除了 MariaDB ADD_MONTHS() 函数之外,还有一些与之相关的函数,它们也可以用于处理日期的运算。下面是一些常用的函数:

  • MariaDB ADDDATE() 函数:用于返回一个日期加上指定的时间间隔后的结果。时间间隔可以是天数、周数、月数、年数等。例如,ADDDATE('2024-01-25', INTERVAL 3 MONTH) 返回 2024-04-25ADDDATE('2024-01-25', 3) 返回 2024-01-28
  • MariaDB SUBDATE() 函数:用于返回一个日期减去指定的时间间隔后的结果。时间间隔可以是天数、周数、月数、年数等。例如,SUBDATE('2024-01-25', INTERVAL 3 MONTH) 返回 2023-10-25SUBDATE('2024-01-25', 3) 返回 2024-01-22
  • MariaDB DATE_ADD() 函数:用于返回一个日期加上指定的时间间隔后的结果。时间间隔可以是天数、周数、月数、年数等。该函数与 MariaDB ADDDATE() 函数的功能相同,只是语法不同。例如,DATE_ADD('2024-01-25', INTERVAL 3 MONTH) 返回 2024-04-25DATE_ADD('2024-01-25', INTERVAL 3 DAY) 返回 2024-01-28
  • MariaDB DATE_SUB() 函数:用于返回一个日期减去指定的时间间隔后的结果。时间间隔可以是天数、周数、月数、年数等。该函数与 MariaDB SUBDATE() 函数的功能相同,只是语法不同。例如,DATE_SUB('2024-01-25', INTERVAL 3 MONTH) 返回 2023-10-25DATE_SUB('2024-01-25', INTERVAL 3 DAY) 返回 2024-01-22

结论

MariaDB ADD_MONTHS() 函数是一个简单而实用的函数,它可以用于给一个日期或者日期时间值加上指定的月份数,得到一个新的日期或者日期时间值。在处理日期的运算时,我们可以灵活地使用 MariaDB ADD_MONTHS() 函数,以及与之相关的函数,来得到我们想要的结果。