Tags
- 그리디
- 트리
- stack
- M:N
- SQL
- 뷰
- Vue
- delete
- create
- 완전검색
- count
- 큐
- Article & User
- update
- Queue
- regexp
- drf
- migrations
- 스택
- distinct
- Tree
- Django
- N:1
- DB
- 백트래킹
- outer join
- 쟝고
- ORM
- 이진트리
- 통계학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Notice
Recent Posts
Link
데이터 분석 기술 블로그
CROSS JOIN 절 본문
예를 들어, 아래와 같은 두 개의 테이블이 있다고 가정해 봅시다.
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 |
- John은 Sales와 HR 부서 모두와 결합되었습니다.
- Alice와 Bob도 각각 Sales와 HR 부서와 결합되었습니다.
- 총 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 |