hyeonga_code

Database_35_ANSI JOIN_Cartesian Product 카타시안 곱, Cross JOIN 본문

Oracle Database

Database_35_ANSI JOIN_Cartesian Product 카타시안 곱, Cross JOIN

hyeonga 2023. 7. 31. 08:59
반응형

   

-- Cartesian Product_ 카티시안 곱
        -- 생성되는 경우
            -- 조인 조건을 생략하는 경우
            -- 조인 조건이 부적합한 경우
            -- 첫 번째 테이블의 모든 행이 두 번째 테이블의 모든 행에 조인되는 경우
        -- 카티시안 곱이 생성되지 않도록 하기 위해서는 ON 절에 항상 유효한 조인 조건을 포함시켜야 합니다.
        -- 모든 확률을 구하기 위한 경우 사용합니다.
SELECT last_name, city
FROM employees NATURAL JOIN locations;
        -- 해당 컬럼이 없어 의도하지 않은 카티시안 곱이 자동으로 생성됩니다.
        -- 총 100개의 데이터가 출력됩니다.  


    -- Cross JOIN
        -- 두 테이블의 상호 간의 조합을 생성하는 것입니다.
        -- 두 테이블 사이의 카티시안 곱_Cartesian Product와 동일합니다.
SELECT last_name, department_name
FROM employees CROSS JOIN departments;
        -- 모든 경우의 수가 조회되며 총 160개의 데이터가 출력됩니다.

반응형