서브쿼리의 종류

    SELECT 서브쿼리 -> 스칼라 서브쿼리

    FROM 서브쿼리 -> inline 서브쿼리

    WHERE 서브쿼리 -> 중첩 서브쿼리 


    WHERE 중첩 서브쿼리 - 조인문으로도 만들 수 있다.

    where 단일값일 경우에는 = 사용

    다중값일 경우 IN 사용


    SELECT 스칼라 서브쿼리

    하나의 컬럼값을 받아서 하나의 컬럼값만 리턴하는 서브쿼리 - primary key 값으로 해야한다.

    안전하게 하기위해서 열의 값을 하나로 설정해준다.

    WHERE ROWNUM=1

    캐싱기능

    입력값과 출력값을 오라클에서 캐시로 저장해서 한번이상 쓸 경우 더 빠르게 불러온다.


    FROM 인라인뷰 FROM절의 서브쿼리

    VIEW -> object 생성 -> sql에서 불러다 쓴다.

    FROM 인라인뷰 -> 일회성뷰로 object를 생성하지 않는다.

     

    옵티마이저 실행계획에서 풀리는 경우가 있는데 다음과 같은 힌트를 주면 된다.

    /*+NO_MERGE*/

     

    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기
    loading