MySQL - 서브쿼리(Subquery)란?

     

     

     

     

    이번 포스팅에서는 서브쿼리에 대해서 알아보도록 하겠습니다.

     

     

     

     

     

       MySQL - 서브쿼리(Subquery)란?

     

     

     

     

     

     

    서브쿼리는 다른쿼리를 내부에 작성하여 사용되는 쿼리 입니다.

     

    SLECT 문을 이용한 데이터 조회는 조색 조건의 따른 또다른 테이블을 만들어 내는 것을 의미합니다 또다른 테이블을 검색 결과의 테이블을 활용하여 다시 쿼리를 실행하는 것을 서브 쿼리(Subquery)라고 생각하시면 됩니다.

     

     

     

       MySQL - 서브쿼리(Subquery)의 종류

     

     

     

     

     

    서브 쿼리는 스칼라 서브 쿼리(Scalar Subquery), 인라인 뷰(Inline View), 중첩 서브 쿼리(Nested Subquery)로 3가지 종류로 나뉘게 됩니다.

     

     

     

     

     

    1. 스칼라 서브쿼리(Scalar Subquery)

     

    SELECT 절에서 사용되는 서브쿼리를 스칼라 서브쿼리(Scalar Subquery)라고 합니다.

     

     

     

     

     

    2. 인라인 뷰(Inline View)

     

     

    FROM 절에서 사용되는 서브쿼리를 인라인 뷰(Inline View)라고 합니다.

     

     

     

     

     

    3. 중첩 서브 쿼리(Nested Subquery)

     

     

    WHERE, HAVING 절에서 사용되는 서브쿼리를 중첩 서브 쿼리(Nested Subquery)라고 합니다.

     

     

     

     

     

       MySQL - 서브쿼리(Subquery)의 특징

     

     

     

     

     

    1. 스칼라 서브쿼리(Scalar Subquery)

     

    스칼라 서브쿼리(Scalar Subquery)는 서브쿼리에서 나오는 결과의 값이 1개의 행이여야 되며, 2개 이상의 행이나 NULL 값을 사용할 수 없습니다.

     

     

     

     

     

    2. 인라인 뷰(Inline View)

    인라인 뷰(Inline View)는 서브쿼리의 테이블의 조회한 컴럼만 사용이 가능하며, 필히 별칭을 지정해야 됩니다.

     

     


    3. 중첩 서브 쿼리(Nested Subquery)

    중첩 서브 쿼리(Nested Subquery)는 단일행, 복수행으로 서브쿼리를 만들수 있는데 1개의 값을 표현할경우 단일할 서브쿼리, 여러개의 값이 필요한 경우 복수행 서브쿼리라고 합니다.

    Posted by 서버이야기