| 편집 요약 없음 | |||
| 47번째 줄: | 47번째 줄: | ||
| {{ | {{스칼라 서브쿼리 장단점}} | ||
| [[category:oracle]] | [[category:oracle]] | ||
2025년 5월 13일 (화) 08:39 판
서브쿼리
서브쿼리의 위치에 따른 명칭
| 명칭 | 사용 위치 | 
|---|---|
| 스칼라 서브쿼리 | SELECT 절 에 있는 서브쿼리 select col1
     , (select user from dual) user -- 스칼라 쿼리 
     , .... | 
| 인라인 뷰 | FROM절에 있는 서브쿼리 select ....
  from (select * 
          from tb_xxx) -- 인라인 뷰 | 
| 서브쿼리 | WHERE절에 있는 서브쿼리 select ....
  from tb_a
 where col1 in (select col1 
                  from tb_xxx) -- 서브쿼리 | 
서브쿼리의 반환 값에 따른 서브쿼리 종류
- - 단일 행 서브쿼리(Single-Row Subquery) : 서브쿼리의 결과가 1행
- - 다중 행 서브쿼리(Multiple-Row Subquery) : 서브쿼리의 결과가 여러 행
- - 다중 컬럼 서브쿼리(Multi-Column Subquery) : 서브쿼리의 결과가 여러 컬럼
스칼라 서브쿼리(Scala Subquery)
- - SELECT문에서 사용하는 서브쿼리로 1행만 반환
- - 입력값(메인쿼리와 조인하는 컬럼)의 Distinct한 종류가 적을수록 캐싱 효과가 좋음
- - 메인쿼리의 값을 서브쿼리가 사용하고, 서브쿼리의 값을 받아서 메인쿼리가 계산하는 구조의 쿼리
