oracle 时间加减综合

加法
select sysdate,add_months(sysdate,12) from dual;        –加1年
select sysdate,add_months(sysdate,1) from dual;        –加1月
select sysdate,to_char(sysdate+7,’yyyy-mm-dd HH24:MI:SS’) from dual;   –加1星期
select sysdate,to_char(sysdate+1,’yyyy-mm-dd HH24:MI:SS’) from dual;   –加1天
select sysdate,to_char(sysdate+1/24,’yyyy-mm-dd HH24:MI:SS’) from dual; –加1小时
select sysdate,to_char(sysdate+1/24/60,’yyyy-mm-dd HH24:MI:SS’) from dual; –加1分钟
select sysdate,to_char(sysdate+1/24/60/60,’yyyy-mm-dd HH24:MI:SS’) from dual; –加1秒

减法
select sysdate,add_months(sysdate,-12) from dual;        –减1年
select sysdate,add_months(sysdate,-1) from dual;        –减1月
select sysdate,to_char(sysdate-7,’yyyy-mm-dd HH24:MI:SS’) from dual;   –减1星期
select sysdate,to_char(sysdate-1,’yyyy-mm-dd HH24:MI:SS’) from dual;   –减1天
select sysdate,to_char(sysdate-1/24,’yyyy-mm-dd HH24:MI:SS’) from dual; –减1小时
select sysdate,to_char(sysdate-1/24/60,’yyyy-mm-dd HH24:MI:SS’) from dual; –减1分钟
select sysdate,to_char(sysdate-1/24/60/60,’yyyy-mm-dd HH24:MI:SS’) from dual; –减1秒

日期与日期之间不能相加  

日期与数字就可相加  
   
SQL>   select   sysdate+1   from   dual;  

日期与日期可以相减  
   
SQL>   select   sysdate-sysdate   from   dual;  

Add_Months(D,X)     
      返回D日期加上X个月后的日期  
      Last_Day(D)  
      返回包含日期D的月份的最后一天的日期

     
add_months(sysdate,1)加一个月  
   
add_months(sysdate,-1)减一个月  
   
sysdate+1   加一天

——————————————————————————-     
Months_Between(D1,D2)  
      返回D1、D2之间的月份数目  
       
New_Time(D,Z1,Z2)  
      返回时区Z1里时间为D时Z2时区的时间  
       
Next_Day(D,S)  
      返回满足条件S的下一天  
    S为星期几  
       
Round(D,F)  
      日期D按照格式F进行舍入  
       
Sysdate  
      返回数据库当前时间  
       
Trunc(D,F)  
      按照格式F截断时间D  
     
另外:日期可以直接加减  
如:sysdate   +1,sysdate   -1

————————————————————

sysdate+1 加一天
sysdate+1/24 加1小时
sysdate+1/(24*60) 加1分钟
sysdate+1/(24*60*60) 加1秒钟

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>