ORACLE在写JOB的时候经常会遇到时间的计算等操作,现简单整理下各种时间的计算:
以下sql语句是两种的写法:s
select
to_char(sysdate ,'YYYY-MM-DD HH24:MI:SS') "当前",
to_char(sysdate+interval '1' day, 'YYYY-MM-DD HH24:MI:SS') "1天后",
to_char(sysdate+1,'YYYY-MM-DD HH24:MI:SS') "1天后",
to_char(sysdate+interval '1' hour,'YYYY-MM-DD HH24:MI:SS') "1小时后",
to_char(sysdate+1/24,'YYYY-MM-DD HH24:MI:SS') "1小时后",
to_char(sysdate+interval '1' minute,'YYYY-MM-DD HH24:MI:SS') "1分钟后",
to_char(sysdate+1/(24*60),'YYYY-MM-DD HH24:MI:SS') "1分钟后",
to_char(sysdate+interval '1' second,'YYYY-MM-DD HH24:MI:SS') "1秒后",
to_char(sysdate+1/(24*60*60),'YYYY-MM-DD HH24:MI:SS') "1秒后"
from dual;
interval表示某段时间,格式是: interval '时间' <day/hour/minute/second> ;
例如 interval '1' day 表示1天;
sysdate+1这种方式的基本单位也是天,1代表1天;