본문 바로가기

개발/오라클

오라클 쿼리 스칼라서브쿼리 인라인뷰 서브쿼리 차이 : 오라클 쿼리 용어 설명

스칼라서브쿼리, 인라인 뷰, 서브쿼리에 대해서 큰 차이가 없고 옵티마이저가 알아서 처리 해주는 것이라고 생각했지만 아니었다. 전부 서브쿼리라고 생각했었는데 각 부분별 명칭이 있으니 구분해서 사용하면 의사소통에 큰 도움이 될 것으로 보인다.


스칼라서브쿼리 : SELECT 절에서 함수처럼 사용되는 쿼리문을 말하며 반환 값은 한 개여야 한다.

인라인뷰 : FROM 절에서 임시 공간에 테이블을 생성하여 사용하는 뷰와 비슷한 저장 형태이고ㅁㅁㅁㅁㅁㅁ

서브쿼리 : WHERE 조건 절에서 비교형태로 사용 되는 형태이다.


그림1.처럼 구역별로 불리는 명칭이 다르다. 




ㅁㅁㅁㅁㅁㅁㅁㅁ

그림1.



SELECT A.계좌번호, 
       B.고객번호, 
       B.고객명, 
       C.적립금,
       ( SELECT 이름
           FROM 사원 A
          WHERE D.사원번호 = A.사원번호
       ) 담당자_이름 -- 스칼라 서브쿼리
  FROM 계좌 A,
      (SELECT 고객번호, 
              MAX(적립금) 적립금
         FROM 포인트
        WHERE 적립일 = '20130217') C -- 인라인 뷰
WHERE NOT EXISTS ( SELECT 'X'
                     FROM 입금_목록 B
                    WHERE A.계좌번호 = B.계좌번호
                      AND B.거래일자 LIKE '201312%')  -- 서브 쿼리
                      AND A.지점_위치 = '대구'
                      AND A.고객번호 = C.고객번호