#Join이란?
두 개 이상의 테이블이나 데이터베이스를 연결하여 데이터를 검색하는 방법
테이블을 연결하려면, 적어도 하나의 칼럼을 서로 공유하고 있어야 함 -> 이를 이용하여 데이터 검색에 활용
#Join 종류
- INNER JOIN
- LEFT OUTER JOIN
- RIGHT OUTER JOIN
- FULL OUTER JOIN
- CROSS JOIN
- SELF JOIN
# INNER JOIN
교집합
기준 테이블과 Join 테이블의 중복된 값을 보여줌
SELECT
기준테이블.컬럼명, JOIN테이블명.컬럼명
FROM 기준테이블
INNER JOIN JOIN테이블 ON 기준테이블.컬럼명 = JOIN테이블.컬럼명
# LEFT OUTER JOIN
기준 테이블 값과 조인 테이블과 중복된 값
왼쪽 테이블 기준으로 JOIN
SELECT
기준테이블.컬럼명, JOIN테이블.컬럼명
FROM 기준테이블
LEFT OUTER JOIN JOIN테이블 ON 기준테이블.컬럼명 = JOIN테이블.컬럼명
# RIGHT OUTER JOIN
LEFT OUTER JOIN과는 반대로 오른쪽 테이블 기준으로 JOIN
SELECT
기준테이블.컬럼명, JOIN테이블.컬럼명
FROM 기준테이블
RIGHT OUTER JOIN JOIN테이블 ON 기준테이블.컬럼명 = JOIN테이블.컬럼명
# FULL OUTER JOIN
합집합
A와 B 테이블의 모든 데이터 검색
SELECT
기준테이블.컬럼명, JOIN테이블.컬럼명
FROM 기준테이블
FULL OUTER JOIN JOIN테이블 ON 기준테이블.컬럼명 = JOIN테이블.컬럼명
# CROSS JOIN
모든 경우의 수를 전부 표현
A가 3개, B가 4개면 총 3*4 = 12 개의 데이터 검색
SELECT
기준테이블.컬럼명, JOIN테이블.컬럼명
FROM 기준테이블
CROSS JOIN JOIN테이블
# SELF JOIN
자기 자신과 자기 자신을 조인
하나의 테이블을 여러번 복사해서 조인
자신이 가지고 있는 칼럼을 다양하게 변형시켜 활용할 때 자주 사용함
SELECT
기준테이블.컬럼명, JOIN테이블.컬럼명
FROM 기준테이블, JOIN테이블
[참고]
https://gyoogle.dev/blog/computer-science/data-base/Join.html
'CS공부 > Database' 카테고리의 다른 글
Index 인덱스 (1) | 2023.12.08 |
---|---|
Anomaly 이상현상 (1) | 2023.12.08 |
SQL vs. NOSQL (0) | 2023.12.08 |
SQL Injection (0) | 2023.12.08 |
Key 키 (0) | 2023.12.08 |