10.2 스칼라 서브쿼리

     

     

    스칼라(scalar) 서브쿼리는 메인 쿼리의 SELECT 절에서 마치 컬럼이나 표현식처럼 사용됩니다. 따라서 스칼라 서브쿼리 내의 SELECT 절에서는 단 하나의 컬럼이나 표현식만 사용할 수 있습니다. 물론 컬럼이나 표현식들을 +나 || 연산자로 연결해 최종 반환값이 한 개라면 여러 개를 사용할 수도 있습니다. 또한, 서브쿼리 하나가 하나의 컬럼이나 표현식 역할을 하므로 두 개 이상의 값, 즉 반환하는 컬럼 수가 2 이상이면 안 되겠죠? 또한 반환되는 로우 수도 반드시 1개이어야 합니다.

    그럼 스칼라 서브쿼리를 작성해 봅시다.

    쿼리 10-1 스칼라 서브쿼리

    SELECT a.emp_id
          ,a.emp_name
          ,a.gender
          ,a.age
          ,a.dept_id
          ,( SELECT b.dept_name
               FROM dept_master b
              WHERE a.dept_id = b.dept_id ) dept_name
    FROM emp_master a;

     

    ▲ 그림 10-1 쿼리 10-1을 실행한 결과

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.