[ 📚 1. 기본 ]
🔸ANSI
🔸 Oracle
SELECT 열이름
FROM 테이블 1, 테이블 2
WHERE 조인 조건
[ 📚 2. Natural Join(ANSI) ]
[ 📚 3. Using Join(ANSI) ]
[ 📚 4. CROSS JOIN(ANSI) ]
<br><br>
## [ 📚 5. Self Join(ANSI) ]
- 자기 자신과 조인(아래 예시: 직원 테이블(tb_emp)에서 각 직원의 매니저 이름을 알고 싶을 때.
### 🔸ANSI
```sql
SELECT
E1.emp_no AS Employee_ID,
E1.emp_nm AS Employee_Name,
E2.emp_nm AS Manager_Name
FROM tb_emp E1
LEFT JOIN tb_emp E2
ON E1.mgr_id = E2.emp_no;
🔸Oracle 방언
SELECT
E1.emp_no AS Employee_ID,
E1.emp_nm AS Employee_Name,
E2.emp_nm AS Manager_Name
FROM tb_emp E1, tb_emp E2
WHERE E1.mgr_id = E2.emp_no;
[ 📚 5. LEFT/RIGHT OUTER JOIN ]
🔸ANSI
SELECT
E.emp_no,
E.emp_nm,
E.dept_cd,
D.dept_name
FROM tb_emp E
LEFT OUTER JOIN tb_dept D
ON E.dept_cd = D.dept_cd;
🔸Oracle 방언
SELECT
E.emp_no,
E.emp_nm,
E.dept_cd,
D.dept_name
FROM tb_emp E, tb_dept D
WHERE E.dept_cd = D.dept_cd(+);
[ 📚 6. FULL OUTER JOIN ]
🔸ANSI(ORACLE 방언 없음)
SELECT
E.emp_no,
E.emp_nm,
E.dept_cd,
D.*
FROM tb_emp E
FULL OUTER JOIN tb_dept D
ON E.dept_cd = D.dept_cd;