💡 조인(JOIN)
- 두 테이블을 묶어서 하나의 결과 집합으로 만드는 것을 말함.
내부 조인(INNER JOIN)
SELECT emp_id,
emp_name,
dept_id,
dept_title
FROM employee
INNER JOIN department ON dept_code = dept_id;
SELECT employee.emp_id,
employee.emp_name,
employee.job_code,
job.job_name
FROM employee
INNER JOIN job ON employee.job_code = job.job_code;
외부 조인(OUTER JOIN)
LEFT OUTER JOIN : 구문 기준 왼쪽 테이블의 모든 데이터 조회RIGHT OUTER JOIN : 구문 기준 오른쪽 테이블의 모든 데이터 조회SELECT e.emp_name,
d.dept_id,
d.dept_title,
e.salary
FROM employee AS e
LEFT OUTER JOIN department AS d ON e.dept_code = d.dept_id
ORDER BY e.dept_code;
-- 2) RIGHT OUTER JOIN : RIGHT JOIN 기준 오른쪽 테이블 내용을 조회함.
SELECT e.emp_name,
d.dept_id,
d.dept_title,
e.salary
FROM employee AS e
RIGHT OUTER JOIN department AS d ON e.dept_code = d.dept_id
ORDER BY e.dept_code;
크로스 조인(CROSS JOIN)
SELECT emp_name,
dept_title
FROM employee
CROSS JOIN department;
자체 조인(SELF JOIN)
SELECT *
FROM employee;
-- manager_id 는 사수의 사번을 의미함.
SELECT e.emp_name AS '직원명',
e.emp_id AS '사번',
e.dept_code AS '부서코드',
e.manager_id AS '사수코드',
M.emp_id AS '사수사번',
M.emp_name AS '사수이름'
FROM employee AS e
LEFT OUTER JOIN employee AS M ON M.emp_id = e.manager_id
ORDER BY `사수코드`;
비등가 조건
UNION/UNION ALL 연산자