随笔 - 72  文章 - 28  trackbacks - 0
<2013年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿(4)

随笔分类(66)

随笔档案(72)

文章档案(19)

收藏夹

搜索

  •  

最新评论

阅读排行榜

评论排行榜

 

一、  语法:NUMTOYMINTERVAL ( n , 'char_expr' )
              char_expr:日期描述,可以是YEAR和MONTH;

  作用:可以将数字转换成相应的日期单位时间

  比如:NUMTOYMINTERVAL ( 1, 'MONTH' ) 表示一个月,注意:此时跟add_months有点区别,后续有例子会讲到。
              NUMTOYMINTERVAL ( 1, 'YEAR' ) 表示一年

 

对于day、hour、minute、second使用的是numtodsinterval函数,方法和numtoyminterval一样。后面可以跟变量

二、interval后面只能用数字

 

下面是举例:

SQL> select add_months (to_date('20110228','yyyymmdd'),1) from dual;

ADD_MONTH
---------
31-MAR-11 

SQL> 
SQL> select add_months(to_date('20110228','yyyymmdd'),-1) from  dual;

ADD_MONTH
---------
31-JAN-11

SQL> 
SQL> 
SQL> select to_date('2007-02-28','yyyy-mm-dd')+numtoyminterval (1,'month') from dual;

TO_DATE('
---------
28-MAR-07 

SQL> select to_date('2007-02-28','yyyy-mm-dd')-numtoyminterval (1,'month') from dual;

TO_DATE('
---------
28-JAN-07


此时,注意跟add_months返回结果的区别。

 

SQL> select to_date('2007-02-28','yyyy-mm-dd')+numtodsinterval(1,'day') from dual;

TO_DATE('
---------
01-MAR-07


SQL> 
SQL> select to_date('2007-02-28','yyyy-mm-dd')+interval '+3' hour from dual;

TO_DATE('
---------
28-FEB-07


SQL> select to_date('2007-02-28','yyyy-mm-dd')+interval '+1' month from dual;

TO_DATE('
---------
28-MAR-07

posted on 2013-11-22 10:39 kelly 阅读(618) 评论(0)  编辑  收藏 所属分类: oracle

只有注册用户登录后才能发表评论。


网站导航: