본문 바로가기
개발/오라클

오라클 CONNECT BY 행 복사를 특정숫자값 만큼(행 필터링없이)

by #무한동력 2020. 6. 17.
SELECT * 
FROM (
        SELECT 10 AS COPY_ROW 
        FROM DUAL
) A 
, TABLE(CAST(MULTISET(SELECT LEVEL FROM DUAL CONNECT BY LEVEL <= CEIL(COPY_ROW)) AS SYS.DBMS_DEBUG_VC2COLL)) B

해당 행 복사 기능이 정말좋은게 보통 CONNECT BY를 이용하면 예를들어 100개행을 띄어놓고 그중에서 매핑되는것만 필터링 하는방식인경우가 많은데 이런식으로 활용하면 최적화되도록 행 복사가 이뤄진다.

또한 A에서 COPY_RAW컬럼에서 특정숫자만큼의 값을 지정해주었고 해당값을 마치 B에서는 변수처럼 사용이 가능하다.

 

 

댓글