본문 바로가기

Information/Oracle 9i

(Sql) 기간내 날짜를 반환하기

SELECT  TO_DATE('2009/10/01', 'YYYY-MM-DD') + NUM-1 AS DAY
FROM (
 SELECT ROWNUM NUM
 FROM DICTIONARY
 WHERE ROWNUM <= TO_DATE('2009/10/31', 'YYYY-MM-DD') - TO_DATE('2009/10/01', 'YYYY-MM-DD')  + 1
)

기간 내 데이터보다 큰 rownum 을 얻어서 사용합니다.

dictionary 도 가능하구요. 보통 한달치를 사용하는데 저같은경우는 tab 를 사용하기도합니다 

(tab가 31개 이상일대만 쓸수잇겠죠 )

그외 Row 수가 31개가 넘는 다른무언가가 있다면 충분히 활용할 만한 방법입니다)

결과는 다 같아요-_-;;

rownum 구해서 . 시작일에 더해주는것 뿐이니까요