시작과 종료는 전부다 date 를 입력하던지 to_date 를 통해 변환해서 사용해야한다.

날짜와 날짜 사이 리스트
SELECT
    시작일+ LEVEL - 1 AS SUCC_DATE
FROM
    DUAL
 CONNECT BY LEVEL <= 종료일- 시작일+ 2

월과 월 사이 리스트

SELECT 
    ADD_MONTHS(시작월,LEVEL-1) AS SUCC_DATE
FROM DUAL
    CONNECT BY LEVEL <= MONTHS_BETWEEN(종료월,시작월)+1


연도와 연도 사이 리스트 

SELECT 
    TO_DATE(TO_CHAR(시작연도,'YYYY')+LEVEL-1,'YYYY') AS SUCC_DATE
FROM DUAL
CONNECT BY LEVEL <= FLOOR(MONTHS_BETWEEN(종료연도,시작연도)/12)+1