날짜를 두개 입력받아 열로 월 데이터 표한하는 방법 문의 드려요 0 2 801

by 초봉 [SQL Query] [2018.12.07 14:51:49]


쿼리가 잘 안짜져서 문의 드립니다.

 

20180701  20181130

두개의 날짜데이터 가지고

201807

201808

201809

201810

201811

 

다섯row 표현하고 싶습니다.

고수님들 부탁 드립니다.

by 우리집아찌 [2018.12.07 15:45:22]
-- 고수는 아니지만..
WITH T (ST_DT , ED_DT ) AS (
SELECT '20180701','20181130' FROM DUAL
)

    SELECT TO_CHAR(ADD_MONTHS(TO_DATE(ST_DT,'YYYYMMDD'),LEVEL-1) ,'YYYYMM' ) YYYYMM
      FROM T
    CONNECT BY LEVEL <= ROUND(MONTHS_BETWEEN (ED_DT,ST_DT),0) 

 


by 마농 [2018.12.07 15:54:11]
SELECT TO_CHAR(ADD_MONTHS(sdt, LEVEL - 1), 'yyyymm') ym
  FROM (SELECT TO_DATE(SUBSTR('20180701', 1, 6), 'yyyymm') sdt
             , TO_DATE(SUBSTR('20181130', 1, 6), 'yyyymm') edt
          FROM dual)
 CONNECT BY LEVEL <= MONTHS_BETWEEN(edt, sdt) + 1
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입