加减日、月、年
在Oracle中,date类型可以直接加减天数,而加减月份要用add_months函数.
select a.hiredate 雇用日期, a.hiredate + 5 加5天, a.hiredate - 5 减5天, add_months(hiredate, 5) 加5个月, add_months(hiredate, -5) 减5个月, add_months(hiredate, 5 * 12) 加5年, add_months(hiredate, -5 * 12) 减5年 from emp a where rownum <=1;雇用日期 加5天 减5天 加5个月 减5个月 加5年 减5年----------- ----------- ----------- ----------- ----------- ----------- -----------1980-12-17 1980-12-22 1980-12-12 1981-05-17 1980-07-17 1985-12-17 1975-12-17
加减时、分、秒
上面讲过,date可以直接加减天数,那么1/24就是一小时,分钟与秒的加减类同。
select a.hiredate, a.hiredate - 5 / 24 / 60 / 60 减5秒, a.hiredate + 5 / 24 / 60 / 60 加5秒, a.hiredate - 5 / 24 / 60 减5分钟, a.hiredate + 5 / 24 / 60 加5分钟, a.hiredate - 5 / 24 减5小时, a.hiredate + 5 / 24 加5小时 from emp a where rownum <= 1;
如果执行时,报错