개발자 블로그

[RDB] JOIN 본문

CS/Database

[RDB] JOIN

hayongwoon 2022. 6. 3. 18:37

 우선 데이터 베이스에서의 조인을 집합과 비교해서 설명을 많이 하지만, 완전 같다고 볼 순 없다. 물론 이해하기 편하게 가시적으로 표현하기엔 집합에 비유가 찰떡이긴하다. 결론은 관계형 디비에서 연결이 되는 키를 갖고 테이블을 이어붙인다. 연결이 되는 n개의 테이블, 연결이 되는 키가 필요하고 기준이 되는 테이블에 따라 조인되어 반환이 된 테이블이 달라진다. 

 

1. LEFT JOIN

 가장 많이 쓰이며, 흔히 접하는 조인이다. A 테이블을 기준으로 연결이 되는 A의 키와 B의 키로 B 테이블을 합친 테이블을 반환! 단, B 테이블에 없는 값은 Null로 표현이 되어 A테이블에 연결이 된다. 왜냐면 A 테이블 기준이니까!

 

2. INNER JOIN 

 그림과 같이 교집합과 같은 부분이다. 두 테이블이 공통으로 갖고 있는 행(테이블)을 반환!

 

3. FULL OUTER JOIN

사실 거의 안 쓰이지만, 참고하는 용도로 작성해보자! 합집합과 같이 A테이블 union distinct B테이블 한 테이블인데, 키를 기준으로 A테이블에 B테이블을 이어붙이고 A만 갖고있는 부분과 B만 갖고 있는 행도 반환한다.

'CS > Database' 카테고리의 다른 글

인덱스  (0) 2022.06.09
DB 기초 - 트랜잭션이란 무엇인가?  (0) 2022.04.22