日期和时间戳都可以添加和减去。
有三种
方法来
操作不同的时间
类型,包括添加年份、月、日、时间、时间、分钟和秒到当前日期。
1使用内置
函数numtodsinterval增加小时,分钟和秒
2添加一个简单的数字来增加一天。
3使用内置函数add_months的年份和月份的增加
例:
当前日期的一个小时:
复制代码代码如下所示:
SQL >选择
系统日期、系统日期+ numtodsinterval(1,'hour)从双;
SYSDATE SYSDATE + numtodsinte
---- ----———
2010-10-14 21:38:19 2010-10-14 22:38:19
当前日期增加了50分钟。
复制代码代码如下所示:
SQL >选择系统日期、系统日期+ numtodsinterval(50,'minute)从双;
SYSDATE SYSDATE + numtodsinte
---- ----———
2010-10-14 21:39:12 2010-10-14 22:29:12
将当前日期增加45秒
复制代码代码如下所示:
SQL >选择系统日期、系统日期+ numtodsinterval(45,第二)从双;
SYSDATE SYSDATE + numtodsinte
---- ----———
2010-10-14 21:40:06 2010-10-14 21:40:51
将当前日期增加3天
复制代码代码如下所示:
SQL >选择系统日期、系统日期+ 3双;
SYSDATE SYSDATE + 3
---- ----———
2010-10-14 21:40:46的21:40:46
将当前日期增加4个月
复制代码代码如下所示:
SQL >选择sysdate,add_months(SYSDATE,4)从双;
add_months SYSDATE(SYSDATE,
---- ----———
2010-10-14 21:41:43 2011-02-14 21:41:43
目前的日期已经增加了2年。
复制代码代码如下所示:
SQL >选择sysdate,add_months(SYSDATE,12×2)从双;
add_months SYSDATE(SYSDATE,
---- ----———
2010-10-14 21:42:17 2012-10-14 21:42:17
时间戳的操作类似于时间戳。
寻找这两个日期的
区别:
例如:在
服务21:23:34和当前时间之间的差异。
复制代码代码如下所示:
SQL >选择sysdate-to_date('20070523 21:23:34 ','yyyy-mm-dd hh24:MI:SS)DT
二重的;
DT
———
一千二百四十点零一六二三
如果直接减去两个日期,结果是一个数据类型,我们可能希望以形式的形式获得两个相位差值:
***:***
复制代码代码如下所示:
SQL >选择numtoyminterval(months_between(DT1、DT2),月月,
2 numtodsinterval(1 -(add_months(DT2,trunc(months_between(DT1、DT2))
日,日)
3(选择sysdate 1,
4 to_date('20070523 21:23:34、yyyy-mm-dd hh24:MI:学生DT2)DT2
5双)
6;
我的一天
---- ----———
+ 00000000 + 0000000 21 15.999999999 00:40:推动力
That is: 3 years, 4 months and 21 days 00:40:15.99999999