MariaDB PERIOD_ADD() 函数的基础用法与实例
MariaDB PERIOD_ADD()
函数用来对年月期间进行加减操作。它可以将给定的年月期间值加上或减去指定的月数。
发布于
MariaDB PERIOD_ADD()
函数用来对年月期间进行加减操作。它可以将给定的年月期间值加上或减去指定的月数。该函数通常用于日期和时间计算中的周期性调整。
语法
MairaDB PERIOD_ADD()
函数的语法如下:
PERIOD_ADD(P, N)
P
: 要进行加减操作的起始年月期间值。年月期间值的格式为YYYYMM
或YYYYMMMM
。N
: 要加/减的月数。正数表示向后推进 N 个月,负数表示向前推移 N 个月。
该函数返回加减后的年月期间值,返回值的格式与 P
参数的格式相同。
实例
将起始年月期间值推进若干月
此实例展示如何使用 PERIOD_ADD()
函数将一个年月期间值向后推进若干月。
SELECT PERIOD_ADD(202302, 5) AS '5个月后';
以下是该语句的输出:
+------------+
| 5个月后 |
+------------+
| 202307 |
+------------+
该语句将起始年月期间值 202302 (2023 年 2 月) 向后推进 5 个月,得到的结果是 202307 (2023 年 7 月)。
查询雇员入职后若干月的工资
此实例展示如何使用 PERIOD_ADD()
函数查询某个雇员入职后若干月时的工资情况。
首先创建一个雇员表:
DROP TABLE IF EXISTS employees;
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(50),
hired_period INT,
salary DECIMAL(10, 2)
);
INSERT INTO employees VALUES
(1, 'John Doe', 202301, 5000.00),
(2, 'Jane Smith', 202211, 6500.00),
(3, 'Bob Johnson', 202105, 7200.00);
然后查询雇员入职后 6 个月的工资情况:
SELECT
id, name,
PERIOD_ADD(hired_period, 6) AS period_after_6_months,
salary
FROM employees;
以下是该语句的输出:
+----+-------------+-----------------------+---------+
| id | name | period_after_6_months | salary |
+----+-------------+-----------------------+---------+
| 1 | John Doe | 202307 | 5000.00 |
| 2 | Jane Smith | 202305 | 6500.00 |
| 3 | Bob Johnson | 202111 | 7200.00 |
+----+-------------+-----------------------+---------+
该查询首先使用 PERIOD_ADD(hired_period, 6)
计算每个雇员入职后 6 个月的年月期间值,然后将其与雇员的姓名、ID 和工资一并列出。
相关函数
以下是几个与 MairaDB PERIOD_ADD()
相关的几个函数:
- MariaDB
PERIOD_DIFF()
函数用来计算两个年月期间值之间相差的月数。 - MariaDB
EXTRACT()
函数用来从日期或时间值中提取出年、月、日、时、分、秒等部分。 - MariaDB
DATE_ADD()
函数用来对日期或时间值进行加减操作。 - MariaDB
DATE_FORMAT()
函数用来格式化日期和时间值的显示格式。
结论
MariaDB PERIOD_ADD()
函数提供了一种方便的方式来对年月期间值进行加减操作。通过将年月期间值与要加/减的月数相结合,可以方便地计算出目标年月期间值。该函数在涉及周期性日期调整的场景中非常实用,如计算雇员入职后若干月的工资等。只需注意传入的参数格式即可轻松使用该函数。