十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
在Oracle 11g中,系统提供了许多用于处理日期和时间的函数,通过这些函数可以实现计算需要的特定日期和时间,常用的日期和时间函数如表7.3所示。
表7.3常用日期时间类函数
日期类型的默认格式是“日-月-年”即“DD-MON-YY”,其中“DD”表示两位数字的“日”,MON表示3位数字的“月份”。YY表示两位数字的“年份”,例如,“01-10月-11”表示2011年10月1日。下面看几个常用函数的具体应用。
1.SYSDATE()函数
如果想要系统当前的日期,可以使用SYSDATE()函数,代码如下。
selectsysdateas系统日期from dual;
通过SQL Developer输入,查询结果如图7.14所示。
图7.14 获得系统当前的日期
2.ADD_MONTHS(d,i)函数
该函数返回日期d加上i个月之后的结果。其中,i为任意整数。
实例10 使用ADD_MONTHS()函数计算日期值
使用ADD_MONTHS()函数计算三个月之后的日期和三个月之前的日期,代码如下:
01 selectsysdate当前日期,
02 ADD_MONTHS(sysdate,3) 三个月之后的日期,
03 ADD_MONTHS(sysdate,-3) 三个月之后的日期
04 from dual;
通过SQL Developer输入,查询结果如图7.15所示。
图7.15 使用ADD_MONTHS()函数计算日期值
通过图7.15可知,当前日期为“2017年5月13日”,那么三个月之前的日期就是“2017年8月13日”。如果ADD_MONTHS()函数的第二个参数为负数,则表明计算的是当前日期之前的日期值。
常见错误:使用“日期 + 数字”的形式来计算之前或之后的日期。
如果要计算三个月之后的日期,使用“sysdate + 90”也是表示三个月之后的日期,为什么要使用ADD_MONTHS()函数来计算日期值呢?
这是因为在日期中存在闰年的情况,如果使用日期加减数字的方式则无法进行准确的日期操作。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。