반응형
0. 단순히 0~12월 까지 표현 해줌.
SELECT
LPAD(LEVEL, 2, '0') LV
FROM DUAL CONNECT BY LEVEL <= 12
SELECT
LPAD(LEVEL, 2, '0') LV
FROM DUAL CONNECT BY LEVEL <= 12
1. FROM ~ TO "1년치" 동적인 달 수 생성
SELECT
SELECT
ADD_MONTHS(TO_DATE('200801', 'YYYYMM'),(LEVEL - 1)) AS YMD
FROM DUAL
CONNECT BY ADD_MONTHS(TO_DATE('200801', 'YYYYMM'),(LEVEL - 1)) <= ADD_MONTH(TO_DATE('200801', 'YYYYMM'),+11)
2. FROM ~ 12 개월 달 수 생성
SELECT ADD_MONTHS(TO_DATE('200801', 'YYYYMM'),(LEVEL - 1)) AS YMD FROM DUAL
CONNECT BY ADD_MONTHS(TO_DATE('200801', 'YYYYMM'),(LEVEL - 1)) <= TO_DATE('200812', 'YYYYMM')
SELECT ADD_MONTHS(TO_DATE('200801', 'YYYYMM'),(LEVEL - 1)) AS YMD FROM DUAL
CONNECT BY ADD_MONTHS(TO_DATE('200801', 'YYYYMM'),(LEVEL - 1)) <= TO_DATE('200812', 'YYYYMM')
3. FROM ~ -12 개월 달 수 생성
SELECT ADD_MONTHS(TO_DATE('201101', 'YYYYMM'),- (LEVEL-1)) AS YMD FROM DUAL
CONNECT BY ADD_MONTHS(TO_DATE('201101', 'YYYYMM'),- (LEVEL-1)) >= ADD_MONTHS(TO_DATE('201101', 'YYYYMM'),-11)반응형
'DataBase > oracle' 카테고리의 다른 글
OracleDbConsoleOrcl em 작동 오류 - 서비스가 시작되지 않습니다. (0) | 2010.06.29 |
---|---|
SELECT 로 Query문 만들기 (0) | 2010.04.14 |
일별 통계 작성법(ORACLE) (0) | 2010.03.13 |
Oracle MERGE INTO(1/2) (0) | 2010.02.07 |
Oracle MERGE INTO(1/1) (0) | 2010.02.07 |