MariaDB PERIOD_DIFF() 函数使用指南
在 MariaDB 中,PERIOD_DIFF()
是一个内置函数,它返回两个通过年月指定的时期之间相差的月数。
MariaDB PERIOD_DIFF()
语法
这是 MariaDB PERIOD_DIFF()
函数的语法:
PERIOD_DIFF(period1, period2)
参数
period1
- 必需的。格式:
YYYYMM
或YYMM
。 period2
- 必需的。格式:
YYYYMM
或YYMM
。
如果您提供了错误数量的参数,MariaDB 将报告一个错误:ERROR 1582 (42000): Incorrect parameter count in the call to native function 'PERIOD_DIFF'
。
返回值
MariaDB PERIOD_DIFF()
函数返回两个通过年月指定的时期之间相差的月数。
如果 period1
晚于 period2
, PERIOD_DIFF()
将返回一个正数,否则它将返回一个负数。
对于两位数年份,MariaDB 的处理规则如下:
- 从
00
到69
的值将被转换为从2000
到2069
- 从
70
到99
的值将被转换为从1970
到1999
MariaDB PERIOD_DIFF()
示例
示例 1
下面的语句展示了 MariaDB PERIOD_DIFF()
函数的基本用法:
SELECT PERIOD_DIFF(202408, 202302);
输出:
+-----------------------------+
| PERIOD_DIFF(202408, 202302) |
+-----------------------------+
| 18 |
+-----------------------------+
让我们将两个参数交换位置,看一下发生了什么:
SELECT PERIOD_DIFF(202302, 202408);
输出:
+-----------------------------+
| PERIOD_DIFF(202302, 202408) |
+-----------------------------+
| -18 |
+-----------------------------+
示例 2 - 两位数年份
对于两位数年份,MariaDB 的处理规则如下:
- 从
00
到69
的值将被转换为从2000
到2069
- 从
70
到99
的值将被转换为从1970
到1999
例:
SELECT
PERIOD_DIFF(6901, 6812),
PERIOD_DIFF(7001, 6912);
输出:
+-------------------------+-------------------------+
| PERIOD_DIFF(6901, 6812) | PERIOD_DIFF(7001, 6912) |
+-------------------------+-------------------------+
| 1 | -1199 |
+-------------------------+-------------------------+
结论
在 MariaDB 中,PERIOD_DIFF()
是一个内置函数,它返回两个通过年月指定的时期之间相差的月数。