JOIN (조인)
JOIN(조인)은 두 개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법을 말합니다.
테이블을 연결하려면 적어도 하나의 칼럼은 서로 공유되고 있어야 합니다.
SELECT 테이블별칭.조회할컬럼, 테이블별칭.조회할컬럼
FROM 기준테이블 별칭
JOIN 조인테이블 별칭 ON 기준테이블별칭.기준키 = 조인테이블별칭.기준키
...
INNER JOIN
- INNER JOIN은 두 테이블의 교집합을 의미합니다.
- 결과값은 기준 테이블과 JOIN하는 테이블의 중복되는 값입니다.
SELECT A.name, B.age
FROM A
INNER JOIN B ON A.id = B.id;
LEFT OUTER JOIN
- LEFT OUTER JOIN은 왼쪽 테이블을 기준으로 JOIN하는 것을 의미합니다.
- 결과값은 기준 테이블의 모든 값과 기준 테이블과 JOIN하는 테이블의 중복되는 값입니다.
SELECT A.name, B.age
FROM A
LEFT OUTER JOIN B ON A.id = B.id;
RIGHT OUTER JOIN
- RIGHT OUTER JOIN은 오른쪽 테이블을 기준으로 JOIN을 하는 것을 의미합니다.
- 결과값은 JOIN하는 테이블의 모든 값과 기준 테이블과 JOIN하는 테이블의 중복되는 값입니다.
SELECT A.name, B.age
FROM A
RIGHT OUTER JOIN B ON A.id = B.id;
FULL OUTER JOIN
- FULL OUTER JOIN은 두 테이블의 합집합을 의미합니다.
- 결과값은 기준 테이블과 JOIN하는 테이블의 모든 값입니다.
SELECT A.name, B.age
FROM A
FULL OUTER JOIN B ON A.id = B.id;
CROSS JOIN
- CROSS JOIN은 두 테이블의 모든 경우의 수를 의미합니다.
- 기준 테이블의 각 row를 JOIN하는 테이블 전체와 JOIN하는 방식입니다.
- 결과값은 N * M입니다.
SELECT A.name, B.age
FROM A
CROSS JOIN B;
SELECT A.name, B.age
FROM A, B;
SELF JOIN
- SELF JOIN은 자기 자신과 자기 자신을 JOIN하는 것을 의미합니다.
- 하나의 테이블을 여러 번 복사해서 JOIN하는 방식입니다.
- 자신이 가지고 있는 column을 다양하게 변형시켜 활용할 경우에 자주 사용합니다.
728x90
반응형
'CS 지식 > 데이터베이스' 카테고리의 다른 글
[CS] 정규화 (0) | 2024.01.31 |
---|---|
[CS] 이상 현상 (0) | 2024.01.30 |
[CS] SQL - 추가 문법 정리 (0) | 2024.01.16 |
[CS] SQL - 기본 명령어 (0) | 2024.01.15 |
[CS] 키의 개념과 종류 (0) | 2024.01.05 |