Syntax
Purpose
MONTHS_BETWEEN returns number of months between datesdate1 anddate2. The month and the last day of the month are defined by the parameterNLS_CALENDAR. Ifdate1 is later thandate2, then the result is positive. Ifdate1 is earlier thandate2, then the result is negative. Ifdate1 anddate2 are either the same days of the month or both last days of months, then the result is always an integer. Otherwise Oracle Database calculates the fractional portion of the result based on a 31-day month and considers the difference in time componentsdate1 anddate2.
Examples
The following example calculates the months between two dates:
SELECT MONTHS_BETWEEN (TO_DATE('02-02-1995','MM-DD-YYYY'), TO_DATE('01-01-1995','MM-DD-YYYY') ) "Months" FROM DUAL; Months----------1.03225806