데이터 분석 기술 블로그

CROSS JOIN 절 본문

SQL/개념

CROSS JOIN 절

데이터분석가 이채은 2024. 9. 5. 09:00

예를 들어, 아래와 같은 두 개의 테이블이 있다고 가정해 봅시다.

employees 테이블 (직원 정보):

employee_id name
1 John
2 Alice
3 Bob

 

departments 테이블 (부서 정보):

department_id department_name
101 Sales
102 HR

CROSS JOIN이란?

CROSS JOIN두 테이블의 모든 행을 서로 조합하여 결과를 반환하는 조인 방식입니다. 한 테이블의 각 행이 다른 테이블의 모든 행과 결합되므로, 결과로 만들어지는 행의 수는 두 테이블의 행 개수의 곱과 같습니다. 이를 카티션 곱이라고 합니다.


우리는 employees 테이블과 departments 테이블을 CROSS JOIN을 사용해 결합하여, 모든 직원과 모든 부서의 조합을 만들어내고 싶습니다.

 

SELECT employees.name, departments.department_name
FROM employees
CROSS JOIN departments;

 

name department_name
John Sales
John HR
Alice Sales
Alice HR
Bob Sales
Bob HR

 

  • JohnSalesHR 부서 모두와 결합되었습니다.
  • AliceBob도 각각 SalesHR 부서와 결합되었습니다.
  • 총 3명의 직원과 2개의 부서가 있으므로, 결과는 3 * 2 = 6개의 행이 나옵니다.

 

'SQL > 개념' 카테고리의 다른 글

GROUP BY 절  (0) 2024.11.03
HAVING 절  (0) 2024.09.13
FULL(OUTER) JOIN 절  (0) 2024.09.04
RIGHT(OUTER) JOIN 절  (0) 2024.09.03
LEFT(OUTER) JOIN 절  (0) 2024.09.02