hyeonga_code

Database_39_SUB QUERY_서브쿼리 기본 개념, 단일행, 다중행, 스칼라, 인라인 뷰 본문

Oracle Database

Database_39_SUB QUERY_서브쿼리 기본 개념, 단일행, 다중행, 스칼라, 인라인 뷰

hyeonga 2023. 8. 2. 05:59
반응형

-- 서브쿼리_SUBQUERY
    -- SELECT 문의 절에 삽입된 SELECT 문입니다.
    -- 간단한 명령문으로 강력한 기능을 제공하는 명령문을 작성할 수 있습니다.
    -- 주로 연산자의 비교 구문에 값 대신 사용합니다.
    -- 포함시킬 수 있는 위치
        -- WHERE 
        -- HAVING 
        -- FROM 
        -- SELECT 문에도 컬럼 명 대신 사용할 수 있습니다.
            -- GROUP BY에는 작성할 수 없습니다.
    -- 메인쿼리 실행 전에 한 번 실행합니다.
        -- 메인쿼리 = 아우터쿼리 : 서브쿼리의 결과를 사용하는 쿼리
    -- 사용 방법
        -- 서브쿼리를 괄호로 묶어 구분합니다.
        -- 비교 조건의 오른쪽에 서브쿼리를 작성합니다.
        -- TOP-N 분석을 제외하고 서브쿼리 내의 ORDER BY 절은 필요하지 않습니다.
            -- TOP-N 분석 : 상위 N 개의 데이터를 추출하는 쿼리입니다. ( 순위 검색 )
        -- 서브쿼리에 사용되는 비교 조건은 단일 행 연산자 및 다중 행 연산자로 분류됩니다. *****
            -- 단일 행 서브쿼리에는 단일 행 연산자를 사용합니다.
            -- 다중 행 서브쿼리에는 다중 행 연산자를 사용합니다.
    -- 서브쿼리 유형
        -- 단일 행 서브쿼리
            -- 내부 SELECT 문에서 한 행만 반환합니다.
            -- =, >, >=, <, <=, <>
        -- 다중 행 서브쿼리
            -- 내부 SELECT 문에서 여러 행을 반환합니다.
            -- 다중 행 비교 연산자
                -- IN : 목록에 있는 임의의 멤버와 동일합니다.
                -- ANY : 값을 서브쿼리에 의해 반환된 각 값과 비교합니다.
                -- ALL : 값을 서브쿼리에 의해 반환된 모든 값과 비교합니다.
    -- 스칼라 서브쿼리
        -- SELECT 절에 사용하는 서브쿼리입니다.
        -- JOIN 절을 대체할 목적으로 사용되는 경우가 많습니다.
    -- 인라인 뷰
        -- 서브쿼리가 FROM 절 안에 사용되는 경우
        -- 뷰 : 저장 장치 내에 물리적으로 존재하지 않습니다.
        -- 사용자에게 있는 것처럼 보여지는 가상의 테이블입니다.

반응형