반응형
🧐 JOIN이 무엇인지 설명해주세요.
SQL문법 JOIN은 하나의 테이블에 원하는 데이터가 모두 있다면 좋겠지만, 두 개의 테이블을 엮어야 원하는 결과가 나오는 경우도 있다. 조인을쓰면 두개의 테이블을 엮에서 원하는 데이터를 추출할 수 있다.
두 테이블의 조인을 위해서는 기본키(PRIMARY KEY, PK)와 외래키(FOREIGN KEY, FK) 맺어야하고, 이를 일대다 관계라 한다.
🧐 INNER JOIN
두 테이블을 연결할 떄 가장 많이 사용하는 것이 INNER JOIN이다.
SELECT <열 목록>
FROM <첫 번째 테이블>
INNER JOIN <두 번째 테이블>
ON <조인 조건>
[WHERE 검색 조건]
#INNER JOIN을 JOIN이라고만 써도 INNER JOIN으로 인식합니다.
🧐 OUTER JOIN
INNER JOIN은 두 테이블에 모두 데이터가 있어야만 결과가 나오지만, 외부 조인은 한쪽에만 데이터가 있어도 결과가 나온다.
SELECT <열 목록>
FROM <첫 번째 테이블(LEFT 테이블)>
<LEFT | RIGHT | FULL> OUTER JOIN <두 번째 테이블(RIGHT 테이블)>
ON <조인 조건>
[WHERE 검색 조건]
- 조인은 두 개의 테이블을 서로 묶어서 하나의 결과를 만들어 내는 것을 말한다.
- INNER JOIN(내부 조인)은 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야 한다.
- OUTER JOIN(외부 조인)은 두 테이블을 조인할 때, 1개의 테이블에만 데이터가 있어도 결과가 나온다.
🧐 LEFT JOIN
이 LEFT JOIN 명령은 왼쪽 테이블의 모든 행을 반환하고 오른쪽 테이블의 일치하는 행을 반환한다. 일치하는 항목이 없으면 오른쪽부터 결과는 NULL이다.
🧐 LIGHT JOIN
LIGHT JOIN은 오른쪽 테이블의 모든 레코드를 반환하고 왼쪽 테이블이서 일치하는 레코드를 반환한다. 일치하는 항목이 없으면 결과는 왼쪽에서 0개의 레코드다.
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;
반응형
'TIL' 카테고리의 다른 글
[TIL] ALB, NLB, ELB의 차이점? (0) | 2024.04.16 |
---|---|
[TIL] 로드 밸런싱 (0) | 2024.04.15 |
[TIL] Redis에 대하여 (0) | 2024.04.12 |
[TIL] 면접 카타 9일차 (0) | 2024.04.09 |
[TIL] 면접카타 8일차 (0) | 2024.04.08 |
댓글