「Oracle」MONTHS_BETWEENで2つの日付間の月数を取得する方法
環境
Oracle Database 12c Standard Edition Release 12.2.0.1.0 – 64bit Production
構文
MONTHS_BETWEEN(日付1, 日付2)
MONTHS_BETWEENを使用して、2つの日付の間の月数を取得します。
日付データ1と日付データ2との月数の差を求めます。日付データ1と日付データ2の日が一致しなければ月数に換算した少数が含まれます
使用例1
SELECT MONTHS_BETWEEN(SYSDATE, '2022/01/12') FROM dual;
結果 7.69072281959378733572281959378733572282
日数以下の差が小数として表示れます。
使用例2
書式
TRUNC(MONTHS_BETWEEN(日付1, 日付2))
SQL構文
SELECT TRUNC(MONTHS_BETWEEN(SYSDATE, '2022/01/12')) FROM dual;
結果 7
使用例3
日付「2022/03/30」と「2015/10/26」の間の月数を取得します
SQL構文
SELECT TRUNC( MONTHS_BETWEEN(TO_DATE('2022/03/30', 'YYYY/MM/DD'),TO_DATE('2015/10/26', 'YYYY/MM/DD') ) / 12 ) RESULT FROM DUAL
結果 6