티스토리 뷰
조인(Join)이란?
조인이란 하나의 테이블이 아닌 두 개 이상의 테이블을 묶어서 하나의 결과물을 만드는 것을 말한다.
조인의 종류 중 대표적인 내부 조인, 왼쪽 조인, 오른쪽 조인, 합집합 조인이 있다.
조인의 필요성
- 관계형 데이터베이스의 구조적 특징으로 정규화를 수행하면 의미 있는 데이터의 집합으로 테이블이 구성되고 각 테이블끼리는 관계(Relationship)을 갖게 된다.
- 이와 같은 특징으로 관계형 데이터베이스는 저장 공간의 효율성과 확장성이 향상되게 된다.
- 다른 한편으로는 서로 관계있는 데이터가 여러 테이블로 나뉘어 저장되므로 각 테이블에 저장된 데이터를 효과적으로 검색하기 위해 조인이 필요하다.
내부조인(Inner Join)
내부조인이란 왼쪽 테이블과 오른쪽 테이블의 두 행이 모두 일치하는 행이 있는 부분만 표기하는 것이다.
즉, 집합에서 교집합이라고 볼 수 있다.
SELECT * FROM TableA A INNER JOIN TableB B ON A.key = B.key
코드로 표현을 하면 위와 같이 표현 할수 있다.
왼쪽조인(Left Outer Join)
왼쪽 조인은 테이블 B의 일치하는 부분의 레코드와 함께 테이블 A를 기준으로 완전한 레코드 집합을 생성한다. 만약 테이블 B에 일치하는 항목이 없으면 해당 값은 null값이 된다.
SELECT * FROM TableA A LEFT JOIN TableB B ON A.key = B.key
코드로 표현을 하면 위와 같이 표현 할수 있다.
오른쪽조인(Right Outer Join)
오른쪽 조인은 테이블 A의 일치하는 부분의 레코드와 함께 테이블 B를 기준으로 완전한 레코드 집합을 생성한다. 만약 테이블 A에 일치하는 항목이 없으면 해당 값은 null값이 된다.
SELECT * FROM TableA A RIGHT JOIN TableB B ON A.key = B.key
코드로 표현을 하면 위와 같이 표현 할수 있다.
합집합조인(Full Outer Join)
합집합 조인(완전 외부 조인)은 양쪽 테이블에서 일치하는 레코드와 함께 테이블 A와 테이블 B의 모든 레코드 집합을 생성한다. 이때 일치하는 항목이 없으면 누락된 쪽에 null값이 포함되어 출력 된다.
SELECT * FROM TableA A FULL OUTER JOIN TableB B ON A.key = B.key
코드로 표현을 하면 위와 같이 표현 할수 있다.
'Tech Interview > 기술 면접 준비' 카테고리의 다른 글
[Backend 개발자 면접 준비] 동기 vs 비동기 (0) | 2023.09.11 |
---|---|
[Backend 개발자 면접 준비] Spring DI(Dependency Injection) 3가지 방법 (0) | 2023.09.09 |
[Backend 개발자 면접 준비] Java Final 키워드란? (0) | 2023.09.02 |
[Backend 개발자 면접 준비] 데이터베이스 PK, UK, FK (0) | 2023.08.29 |
[Backend 개발자 면접 준비] 데이터베이스 정규화란? (0) | 2023.08.28 |
- Total
- Today
- Yesterday
- 개발자 면접 준비
- 코테공부
- 프로그래머스
- 기술 면접 준비
- 코테 준비
- 개발자 취업 준비
- 백엔드 개발자
- 자바
- 프로그래머스 자바
- 제로베이스 백준 장학금
- 취업 준비
- 백엔드 개발자 취업 준비
- 알고리즘 공부
- java
- 프로그래머스 카카오
- 취준
- 백엔드 개발자 기술 면접 준비
- 백준
- 코딩테스트공부
- 알고리즘
- 알고리즘공부
- 제로베이스 백엔드 스쿨
- 개발자 취준
- 자바공부
- 코테준비
- 취업준비
- 주니어 개발자 취업 준비
- 코딩테스트
- 코딩테스트 준비
- 코딩테스트 공부
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |