일정기간동안 매월 데이타를 생성하고 싶습니다. 0 2 1,845

by 비니 [Oracle 기초] [2013.02.02 15:16:27]


안녕하세요 조언을 얻고자 이렇게 글을 올립니다.

특정일자(From~ToDate)를 줘서 그 기간동안 매월 FromDate에 일자로  데이타를 만들고 싶습니다.
AddMonth를 이용하면 될듯한데.. Loop를 어떻게 해서 데이타를 생성해야 할지 감이 오지 않네요..

예1) 2011-08-10~2012-02-22 From~To

결과)

회차 해당일  
1 2011-08-10 일자는 FromDate 일자
2 2011-09-10  
3 2011-10-10  
4 2011-11-10  
5 2011-12-10  
6 2012-01-10  
7 2012-02-10  
8 2012-02-22 ToDate


예1) 2011-08-31~2012-03-05 From~To
회차 해당일  
1 2011-08-31 일자는 FromDate 일자
2 2011-09-30  
3 2011-10-31  
4 2011-11-30  
5 2011-12-31  
6 2012-01-31  
7 2012-02-28  
8 2012-03-05 ToDate


읽어주셔서 감사합니다.
행복한 하루 되세요~
by 손님 [2013.02.02 17:39:21]
SELECT TO_CHAR(TO_DATE('20110831', 'YYYYMMDD'), 'YYYY-MM-DD') FROM dual
 UNION ALL
SELECT TO_CHAR(ADD_MONTHS(TO_DATE('20110831', 'YYYYMMDD'), level), 'YYYY-MM-DD')
  FROM dual CONNECT BY LEVEL < MONTHS_BETWEEN(TO_DATE('20120305', 'YYYYMMDD'), TO_DATE('20110831', 'YYYYMMDD'))
 UNION ALL
SELECT TO_CHAR(TO_DATE('20120305', 'YYYYMMDD'), 'YYYY-MM-DD') FROM dual
;

참고로 2012년 2월은 윤달이라 29일까지 있습니다.

by 비니 [2013.02.02 17:43:10]

정말 감사합니다 (__ )
감도 못잡고 있었는데.. 주말에도 이렇게 알려주시고 좋은 주말 되세요~
진심으로 감사합니다

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