빅데이터/Oracle SQL | Do it! 오라클로 배우는 데이터베이스 입문

서브쿼리 | 서브쿼리란? / 서브쿼리의 특징/ 서브쿼리의 종류와 사용 / 단일행 서브쿼리

KimKelly 2023. 3. 1. 21:45
반응형

09. SQL문 속 또 다른 SQL문, 서브쿼리

09-1. 서브쿼리


[서브쿼리란?]

SQL문을 실행하는 데 필요한 데이터를 추가로 조회하기 위해 SQL문 내부에 사용하는 SELECT문.

 

- JONES보다 급여가 높은 사원 조회하기

 


[서브쿼리의 특징]

  • 연산자와 같은 비교 또는 조회 대상의 오른쪽에 놓이며, 괄호 ()로 묶어 사용.
  • 특수한 경우를 제외한 대부분의 서브쿼리에서는 ORDER BY 사용 불가능.
  • 서브쿼리의 SELECT절에 명시한 열은 메인쿼리의 비교 대상과 같은 자료형과 같은 개수로 지정해야 함.
  • 서브쿼리에 있는 SELECT문의 결과 행 수는 함께 사용하는 메인쿼리의 연산자 종류와 호환 가능해야 함.

 

 

[서브쿼리의 종류와 사용]

- WHERE절 뒤에서

  • 단일 행 서브쿼리
  • 다중 행 서브쿼리
  • 다중 열 서브쿼리

 

- FROM절 뒤에서

  • 인라인 뷰

 

- SELECT 절에서

  • 스칼라 서브쿼리

 

 

09-2. 실행 결과가 하나인 단일행 서브쿼리

  • 단일행 서브쿼리: 실행 결과가 단 하나의 행으로 나오는 서브쿼리.
  • 서브쿼리에서 출력되는 결과가 하나이므로, 메인쿼리와 서브쿼리 결과는 단일행 연산자(>, >=, =, <=, <, !=)를 사용하여 비교함.

 


[단일행 서브쿼리와 날짜형 데이터]

- SCOTT보다 빨리 입사한 사원 목록 조회하기

 

 

[단일행 서브쿼리와 함수]

- 20번 부서에 속한 사원 중, 전체 사원의 평균 급여보다 높은 급여를 받는 사원 정보 및 소속 부서 정보 함께 출력하기



 

반응형