Join 과 Union 공통점 : 하나 이상의 테이블의 데이터 결합
Join 과 Union 차이점 : 데이터가 결합되는 방식
ex)
A테이블
col1 | col2
-----------
A | 1
B | 1
C | 2
C | 2
D | 3
B테이블
col1 | col2
-----------
A | 가
A | 나
B | 나
C | 나
D | 다
- Join : 새로운 열로 결합 (수평결합)
-> 두 개의 테이블 결합 시, 첫 번째 테이블의 데이터는 동일한 행의 두 번째 테이블 열과 함께 한 열 세트에 표시
SELECT A.col1, A.col2, B.col2
FROM A
INNER JOIN B
ON A.col1 = B.col1;
결과)
A.col1 A.col2 B.col2
-----------------------
A 1 가
A 1 나
B 1 나
C 2 나
C 2 나
D 3 다
- Union : 새로운 행으로 결합(수직결합)
-> 두 개의 테이블 결합 된 경우, 첫번째 테이블의 데이터는 한 행 세트에 있고 / 두 번째 테이블 데이터는 다른 세트에
-> select 에 컬럼 수는 맞춰서 진행해야 한다.
SELECT col1, col2
FROM A
UNION
SELECT col1, col2
FROM B;
결과)
col1 col2
-----------
A 1
B 1
C 2
D 3
A 가
A 나
B 나
C 나
D 다
'Database Study > SQL' 카테고리의 다른 글
[RDB]데이터모델링 (2) | 2021.08.19 |
---|---|
[SQL]LOCK이란? (0) | 2020.06.02 |
[MySQL] CASE, COALESCE, IFNULL NULL 처리 (1) | 2020.03.11 |
[MySQL]프로그래머스_입양 시각 구하기(2) (UNION/변수선언) (2) | 2020.03.10 |
[Oracle DB]Join 종류 (0) | 2020.01.06 |