17,088
社区成员
发帖
与我相关
我的任务
分享
select trunc(to_date('2010-02-10','yyyy-MM-dd'),'mm') - trunc(to_date('2008-12-01','yyyy-MM-dd'),'mm') from dual;
with temp as(
select to_date('2006-05-01','yyyy-mm-dd') time2,to_date('2009-06-08','yyyy-mm-dd') time1 from dual
union all
select to_date('2008-12-01','yyyy-mm-dd') time2,to_date('2010-02-10','yyyy-mm-dd') time1 from dual
)
select case when to_number(to_char(time1,'MM')) - to_number(to_char(time2,'MM')) >= 0
then to_number(to_char(time1,'MM')) - to_number(to_char(time2,'MM'))
else to_number(to_char(time1,'MM'))+12 - to_number(to_char(time2,'MM')) + 1
end 相差月数
from temp