格式:NumToYMInterval(n, interval_unit);
n: 数值类型
interval_unit: 'YEAR', 'MONTH' ,或其他可以转换成这两个值之一的表达式
NumToYMInterval(1, 'YEAR') :一年后的间隔
NumToYMInterval(-1, 'MONTH'): 一个月前
小数会被计算成整数后,再做计算:
select sysdate + numtoyminterval(0.1, 'MONTH') as future from dual;
FUTURE
------------------
11-OCT-13
该函数的结果是:”INTERVAL YEAR TO MONTH literal“。不能与数值做运算。
select 1 + NumToYMInterval(1, 'MONTH') from dual
Oracle会返回一个错误。
做日期运算时,这个函数非常有用。例如:取一个月后的日期:
select sysdate + NumToYMInterval(1, 'MONTH') from dual;