返回首页

gbase数据、南大通用产品文档:GBase8aADD_MONTHS(date,number)

更新日期:2024年09月11日

函数说明

ADD_MONTHS(date, number)函数是在一个日期上加上指定的月份数,其中,
日期中的日是不变的;

GBase UP 产品手册 5 数据库管理指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 848

如果开始日期是某月的最后一天,结果将会进行调整,返回值会对应新的一月
的最后一天;

如果结果月份的天数比开始月份的天数少,
返回值也会向回调整以适应有效日
期。
说明

date:一个日期数值;

number:加上的月份数,如果是要减去的月份数,则为负数。
注意
hive 引擎不支持该函数。
示例
示例1
在当前日期时间上加上3 个月,日期中的日不变。
gbase> SELECT NOW(),ADD_MONTHS(NOW(),3) AS f_Show FROM t;
+---------------------+---------------------+
| NOW() | f_Show |
+---------------------+---------------------+
| 2013-10-12 10:41:28 | 2014-01-12 10:41:28 |
+---------------------+---------------------+
1 row in set
示例2
增加的月份为负数时,相当于提前月份数。
gbase> SELECT NOW(),ADD_MONTHS(NOW(),-3) AS f_Show FROM t;
+---------------------+---------------------+
| NOW() | f_Show |
+---------------------+---------------------+
| 2013-10-12 10:41:40 | 2013-07-12 10:41:40 |
+---------------------+---------------------+
1 row in set
示例3
通过使用to_date 函数,转换为日期型后,再加上指定的月份。
gbase> SELECT ADD_MONTHS(TO_DATE('2012-9-15','YYYY-MM-DD'),3) AS f_Show FROM t;

GBase UP 产品手册 5 数据库管理指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 849
+------------+
| f_Show |
+------------+
| 2012-12-15 |
+------------+
1 row in set
示例4
date 为TO_DATE()函数,且TO_DATE()函数的参数为日期时间格式。
gbase> SELECT ADD_MONTHS(TO_DATE('2012-9-15 12:20:31','YYYY-MM-DD HH24:MI:SS'),3) AS
f_Show FROM t;
+---------------------+
| f_Show |
+---------------------+
| 2012-12-15 00:00:00 |
+---------------------+
1 row in set
示例5
8 月31 日是8 月份最后一天,增加3 个月后,是11 月份,11 月共有30 天,因此
结果就是“2012-11-30”。
gbase> SELECT ADD_MONTHS(TO_DATE('2012-8-31','YYYY-MM-DD'),3) AS f_Show FROM t;
+------------+
| f_Show |
+------------+
| 2012-11-30 |
+------------+
1 row in set

应用程序接口
用户可以使用标准的数据库应用程序接口(如ODBC 和JDBC),开发基于GBase 8c
的应用程序。
应用程序通过API 与数据库进行交互,在避免了应用程序直接操作数据库系统的同时,
增强了应用程序的可移植性、
扩展性和可维护性。
GBase 8c 兼容openGauss 支持的应用程序
接口,下载地址如下:
表6-1 数据库应用程序接口
API
下载地址
ODBC
Linux 下:
驱动程序:openGauss-x.x-ODBC.tar.gz
unixODBC 源码包:
http://sourceforge.net/projects/unixodbc/files/unixODBC/2.3.7/unixOD
BC-2.3.7.tar.gz/download
JDBC
驱动程序:openGauss-x.x-EULER-64bit-Jdbc.tar.gz
驱动类:org.postgresql.Driver
使用JDBC 和ODBC 接口连接数据库属远程连接,因此需要GBase 已经完成服务端配
置。
更多支持的应用程序接口详细信息,请参考《GBase 8c V5_3.0.0_开发者指南》中“应
用程序开发教程”章节。

GBase 8c V5 安装部署手册(主备式)
南大通用数据技术股份有限公司
31

GBase 8c 中游标(cursor)是系统为用户开设的一个数据缓冲区,存放着SQL 语句的执
行结果。每个游标区都有一个名称。用户可以用SQL 语句逐一从游标中获取记录,并赋给
主变量,交由主语言进一步处理。
游标的操作主要有游标的定义、打开、获取和关闭。
完整的游标操作示例可参考显式游标。