본문으로 바로가기

[Oracle] dual 다중조회 (connect by level)

category DB\SQL 2019. 10. 19. 11:09

더미테이블 dual 로 조회시 하나의 행을 조회 가능하다.

 

하지만 connect by level 을 사용하면 다중 행 조회가 가능하다.

SELECT 
    LEVEL
FROM DUAL 
CONNECT BY LEVEL <7;

 

LEVEL 을 인덱스로 이용하여 다양한 값을 뽑아낼 수 있다.

SELECT 
    LEVEL
    ,CASE WHEN LEVEL=1 THEN 'A'
          WHEN LEVEL=2 THEN 'B'
          WHEN LEVEL=3 THEN 'C'
          WHEN LEVEL=4 THEN 'D'
          ELSE 'E' END AS ENG
FROM DUAL 
CONNECT BY LEVEL <7;

쿼리 조회 결과.