months_between
を使用します 、おそらくfloor
と組み合わせる :
select floor(months_between(date '2012-10-10', date '2011-10-10') /12) from dual;
select floor(months_between(date '2012-10-9' , date '2011-10-10') /12) from dual;
floor
あなたが丸みを帯びた年を取得することを確認してください。小数部分が必要な場合は、明らかにfloor
を使用しないでください。 。