양쪽 테이블에 모두 존재하는 데이터만 조회
SELECT e.name, d.department_name
FROM employees e
INNER JOIN departments d ON e.dept_id = d.dept_id;
왼쪽 테이블의 모든 데이터 + 오른쪽 테이블의 매칭 데이터
SELECT e.name, d.department_name
FROM employees e
LEFT JOIN departments d ON e.dept_id = d.dept_id;
오른쪽 테이블의 모든 데이터 + 왼쪽 테이블의 매칭 데이터
SELECT e.name, d.department_name
FROM employees e
RIGHT JOIN departments d ON e.dept_id = d.dept_id;
양쪽 테이블의 모든 데이터 (MySQL은 UNION 사용)
SELECT e.name, d.department_name
FROM employees e
FULL OUTER JOIN departments d ON e.dept_id = d.dept_id;
같은 테이블을 자기 자신과 조인
-- 직원과 그의 상사 조회
SELECT e1.name AS employee, e2.name AS manager
FROM employees e1
LEFT JOIN employees e2 ON e1.manager_id = e2.employee_id;