CONNECT BY LEVEL 은 연속적인 숫자를 조회할 때 사용한다.

 

1~10 까지 숫자 조회
SELECT LEVEL AS NO
  FROM DUAL
CONNECT BY LEVEL <= 10;

결과 : 

 

2021년 1월~12월까지 조회
SELECT '2021년 ' || LPAD(LEVEL, 2, 0) || '월' AS DT
  FROM DUAL
CONNECT BY LEVEL <= 12

결과 : 

 

특정 날짜 구간 조회
SELECT TO_DATE('20200701', 'YYYYMMDD') + (LEVEL-1) AS DT 
  FROM DUAL 
CONNECT BY LEVEL <= (TO_DATE('20200717', 'YYYYMMDD') - TO_DATE('20200701', 'YYYYMMDD')) + 1  -- 17

결과 : 

+ Recent posts