§ Oracle兼容-函数-ADD_MONTHS()函数
§ 1. 语法
ADD_MONTHS(date, n)
1
§ 2. 定义和用法
ADD_MONTHS()
函数的作用是对日期函数进行操作,在数据查询的过程中进行日期的按月增加, ADD_MONTH()
的返回类型为 DATETIME
。
§ 3. Oracle兼容说明
在GreatSQL中 ADD_MONTHS(date, n)
函数的参数输入格式检查、输出结果等行为与Oracle存在一定程度差异,二者差异描述如下表:
说明 | 示例 | Oracle返回值 | GreatSQL返回值 |
---|---|---|---|
对日期格式的支持范围不同 | ADD_MONTHS('03-MAR-97', 1) ; | 03-APR-97 | 返回NULL,并提示Warning:Incorrect datetime value: '03-MAR-97' |
计算后的日期超过系统支持的范围时,处理方式不同 | ADD_MONTHS('2022-02-28', 95746) | 报ORA-01841错误 | 返回NULL, 并提示 Warning:datetime field overflow |
§ 4. 示例
greatsql> SELECT NOW(), ADD_MONTHS(SYSDATE(), -2), ADD_MONTHS(SYSDATE(), +2);
+---------------------+---------------------------+---------------------------+
| NOW() | ADD_MONTHS(SYSDATE(), -2) | ADD_MONTHS(SYSDATE(), +2) |
+---------------------+---------------------------+---------------------------+
| 2023-05-18 09:06:38 | 2023-03-18 09:06:38 | 2023-07-18 09:06:38 |
+---------------------+---------------------------+---------------------------+
1
2
3
4
5
6
2
3
4
5
6
扫码关注微信公众号