怎么判断两个日期差的年数 例如2010-12-12 ,2012-01-08 在oracle数据库中

兄弟,打扰一下,怎么判断两个日期差的年数 例如2010-12-12 ,2012-01-08 在oracle数据库中
最新回答
戏柚画西楼

2025-03-30 02:29:06

两个日期型直接相减是天数,select to_date(' 2012-01-08','yyyy-mm-dd')-to_date('2010-12-12','yyyy-mm-dd') from dual
如果涉及年数,你要考虑闰年非闰年。。。。一般不会比较年,大致的话你就除365天就是了。
长歌与行

2025-03-30 06:35:56

select datediff(year,'2010-12-12' ,'2012-01-08' )
追问
在oracle中怎么办呢

datadiff函数是在其他数据库中的吧
满栀

2025-03-30 04:53:46

select months_between(to_date('2012-01-08','yyyy-mm-dd'),to_date('2010-12-12','yyyy-mm-dd'))/12 year from dual;
想取整的话
select floor(months_between(to_date('2012-01-08','yyyy-mm-dd'),to_date('2010-12-12','yyyy-mm-dd'))/12) year from dual;