在处理前将varchar2的字段转换成date的类型进行计算。to_char(column1,'YYYY-MM-DD HH24:MI:SS') + 时间值。要注意的是"时间值"只能是一个数字,因为在oracle中进行日期值计算时不允许两个date类型的相加。另外,"时间值"是以天为单位的,也就是说:
如果要加上1天,则使用date+1;
如果加上1小时,则使用date+1/24;
如果加上1分钟,则使用date+1/(24*60);
如果加上1秒钟,则使用date+1/(24*60*60)。
如果要加上1天,则使用date+1;
如果加上1小时,则使用date+1/24;
如果加上1分钟,则使用date+1/(24*60);
如果加上1秒钟,则使用date+1/(24*60*60)。
SQL> select sysdate from dual;SYSDATE
-----------
2005-9-14 9SQL> --加上6个月
SQL> select sysdate + interval '6' month from dual;SYSDATE+INTERVAL'6'MONTH
------------------------
2006-3-14 9:27:07SQL> --加上6小时
SQL> select sysdate + interval '6' hour from dual;SYSDATE+INTERVAL'6'HOUR
-----------------------
2005-9-14 15:27:07