Skip to Content
Suffering builds character

4.등가 조인

등가 조인(EQUI JOIN)은 NATURAL JOIN(ANSI)과 같은 의미로, 조인 조건이 모두 등호(=)인 조인 조건으로 비교되는 값이 동일한 경우에만 행이 반환됨

2개의 테이블 조인

sql
SELECT a.x AS 'x of ta', b.x AS 'x of tb' FROM ta a, tb b WHERE b.x = a.x; -- 각 테이블(a, b)의 x 컬럼 값이 같은 행만 연결(JOIN)하여 조회

-> tb 테이블에는 3이 없기 때문에 2개의 행만 반환됨

ANSI 문법

sql
SELECT a.x AS 'x of ta', b.x AS 'x of tb' FROM ta a NATURAL JOIN tb b;
AB조건결과
B == A일 때,
111 == 1TRUE
122 == 1FALSE
211 == 2FALSE
222 == 2TRUE
311 == 3FALSE
322 == 3FALSE

3개의 테이블 조인, n개의 테이블 조인 시, 조인 조건은 최소 n-1개

sql
SELECT a.x AS 'x of ta', b.x AS 'x of tb', c.x AS 'x of tc' FROM ta a, tb b, tc c WHERE a.x = b.x AND b.x = c.x;

→ 모든 테이블에서 서로 값이 동일한 행은 1밖에 없기 때문에 1개의 행만 반환됨

ABB == AB == A 결과CC == BC == B 결과
111 == 1TRUE11 == 1TRUE
111 == 1TRUE33 == 1FALSE
122 == 1FALSE1
122 == 1FALSE3
211 == 2FALSE1
211 == 2FALSE3
222 == 2TRUE11 == 2FALSE
222 == 2TRUE33 == 2FALSE
311 == 3FALSE
311 == 3FALSE
322 == 3FALSE
322 == 3FALSE

조인은 1행씩 순차적으로 수행됨 조건1이 false일 경우, 조건2는 판단하지 않음(단축 평가)

Last updated on