How to get a list of months between 2 given dates using a query?

后端 未结 6 2378
不思量自难忘°
不思量自难忘° 2020-12-10 15:19

I have 2 dates, say 28-Mar-2011 and 29-Jun-2011. I need an sql query that will display the months between these 2 dates including the months containing the dates, ie. June,

6条回答
  •  误落风尘
    2020-12-10 15:37

    SELECT MIN (to_date((TO_CHAR (Actual_Date, 'DD-MM-RRRR')),'dd-mm-rrrr')) F_DATE,
             MAX (to_date((TO_CHAR (Actual_Date, 'DD-MM-RRRR')),'dd-mm-rrrr')) T_DATE,
             TO_CHAR (Actual_Date, 'MM-RRRR') TRX_MONTH     
        FROM (    SELECT TRUNC (TO_DATE (:P_FDATE, 'dd-mm-rrrr')) + LEVEL - 1
                            Actual_Date
                    FROM (SELECT TRUNC (TO_DATE (:P_FDATE, 'dd-mm-rrrr'), 'MM') - 1
                                    AS dt
                            FROM DUAL)
              CONNECT BY LEVEL <=
                            (  TO_DATE (:P_TDATE, 'dd-mm-rrrr')
                             - TRUNC (TO_DATE (:P_FDATE, 'dd-mm-rrrr'))
                             + 1))
    GROUP BY TO_CHAR (Actual_Date, 'MM-RRRR')
    ORDER BY 1
    

提交回复
热议问题