CROSS JOIN은 두 테이블의 ROW간 가능한 모든 조합을 결과로 반환하며,

이러한 CROSS JOIN의 특징을 '카티션의 곱'이라고도 합니다.

 

 


 

간단한 CROSS JOIN의 예시 코드입니다.

 

employees 테이블과 departments 테이블을 CROSS JOIN합니다.

 

SELECT
    COUNT(*)
FROM
    employees;

SELECT
    COUNT(*)
FROM
    departments;

 

먼저 각 테이블의 Row를 COUNT( * )로 조회합니다.

 

SQL

 

 

CROSS JOIN에 대한 간단한 쿼리입니다.

 

-- Oracle JOIN --

SELECT
    *
FROM
    employees,
    departments;
    

-- Ansi JOIN --

SELECT
    *
FROM
    employees CROSS JOIN departments;

 

 

 

결과는 두 테이블 Row들의 카티션의 곱즉, 107 * 27 = 2889개입니다.

 

SQL

 

만약 결과가 뜨지 않는다면 VScode의 Oracle Developer Setting에서 Max Row를 높여주시면 됩니다.

일반적으로 500개로 제한되어 있습니다.

 

 

 

 

 

 

 

 

 

'Database > SQL' 카테고리의 다른 글

그룹화  (0) 2023.08.17
인라인 뷰  (0) 2023.08.17
외래 키  (1) 2023.08.16
데이터 사전  (0) 2023.08.16
동등 조인  (0) 2023.07.26

+ Recent posts