JOIN은 두 개의 테이블을 서로 묶는 것을 말함.
INNER JOIN = JOIN
SELECT a.empno, b.dname
FROM A a INNER JOIN B b on a.KEY = b.KEY
LEFT OUTER JOIN
SELECT *
FROM A a LEFT JOIN B b ON a.KEY = b.KEY
SELECT *
FROM A a LEFT JOIN B b ON a.KEY = b.KEY
WHERE b.KEY IS NULL
FULL OUTER JOIN → MySQL에서 지원 안 됨
SELECT *
FROM A a FULL OUTER JOIN B b on a.KEY = b.KEY
SELECT *
FROM A a FULL OUTER JOIN B b on a.KEY = b.KEY
WHERE a.KEY IS NULL or b.KEY IS NULL
RIGHT OUTER JOIN
SELECT *
FROM A a RIGHT OUTER JOIN B b ON a.KEY = b.KEY
SELECT *
FROM A a RIGHT OUTER JOIN B b ON a.KEY = b.KEY
WHERE a.KEY IS NULL
한쪽 테이블의 모든 행과 다른쪽 테이블의 모든 행을 조인시킴. 상호 조인 결과의 전체 행 개수는 두 테이블의 각 행의 개수를 곱한 수이다. 카티션 곱(CARTESIAN PRODUCT)라고도 한다.
SELECT *
FROM A CROSS JOIN B