조인은 두 개 이상의 테이블을 연결하여 데이터를 조회하는 기능입니다
JOIN의 필요성과 유형
관계형 데이터베이스에서는 정규화를 통해 데이터가 여러 테이블에 분산됩니다
JOIN을 통해 이러한 테이블을 연결하여 필요한 데이터를 가져올 수 있습니다
INNER JOIN (내부 조인)
SELECT 컬럼명
FROM 테이블1 [INNER] JOIN 테이블2
ON 테이블1.칼럼 = 테이블2.칼럼;
두 테이블에서 일치하는 값이 있는 행만 반환
OUTER JOIN (외부 조인)
일치하지 않는 행도 결과에 포함됩니다
🔹 LEFT OUTER JOIN : 왼쪽 테이블의 모든 행과 오른쪽 테이블의 일치하는 행을 반환
🔹 RIGHT OUTER JOIN : 오른쪽 테이블의 모든 행과 왼쪽 테이블의 일치하는 행을 반환
🔹 FULL OUTER JOIN : 두 테이블의 모든 행을 반환
CROSS JOIN (교차 조인)
SELECT *
FROM EMP CROSS JOIN DEPT;
두 테이블의 모든 행 조합(카테시안 곱)을 반환
SELF JOIN (셀프 조인)
SELECT E1.NAME AS EMPLOYEE, E2.NAME AS MANAGER
FROM EMPLOYEE E1 LEFT JOIN EMPLOYEE E2
ON E1.MANAGER_ID = E2.EMP_ID
같은 테이블을 자기 자신과 조인
NATURAL JOIN
SELECT *
FROM EMP NATURAL JOIN DEPT;
공통 칼럼 이름을 자동으로 찾아 조인
USING 절
SELECT *
FROM EMP A JOIN DEPT B USING (DEPTNO);
공통 칼럼을 명시한다
카디널리티(Cardinality)와 성능
카디널리티는 칼럼의 유일한 값의 개수를 의미합니다
JOIN을 설계할 때 카디널리티를 고려하여 성능을 최적화할 수 있습니다
'🍏 개발일기 > 으쌰으쌰 SQLD 자격증 준비' 카테고리의 다른 글
| 노랭이 104P 부터 시작 101번 ~ 110번 (0) | 2026.02.14 |
|---|---|
| 노랭이 166P 부터 시작 112번 ~ 117번 (0) | 2026.02.13 |
| 데이터 모델과 SQL & GROUP BY절, HAVING절, ORDER BY 절 (0) | 2026.02.12 |
| 노랭이 88P 부터 시작 78번 ~ 89번 (0) | 2026.02.11 |
| 관계 & 식별자 (0) | 2026.02.11 |