[💾 데이터베이스] 조인 (Join)
데이터베이스에서 조인이란 하나의 테이블이 아닌 두개 이상의 테이블을 묶어서 하나의 결과물을 만드는 것을 뜻하는 용어입니다.
조인 (Join)의 대표적인 종류는 아래와 같습니다.
- 내부 조인 (Inner Join) → 왼쪽 테이블과 오른쪽 테이블의 두 행이 모두 일치하는 행이 있는 부분만 표시합니다.
- 왼쪽 조인 (Left Outer Join) → 왼쪽 테이블의 모든 행이 결과 테이블에 표시합니다.
- 오른쪽 조인 (Right Outer Join) → 오른쪽 테이블의 모든 행이 결과 테이블에 표시합니다.
- 합집합 조인 (Full Outer Join) → 두 개의 테이블을 기반으로 조인 조건에 만족하지 않는 행까지 모두 표시합니다.
※ 데이터베이스 조인에 대하여 시각적으로 손쉽게 확인하기 위해서 https://sql-joins.leopard.in.ua/ 도구를 사용해서 확인할 수 있습니다.
조인 작업을 위해서 수행되는 조인 원리는 아래와 같습니다.
- 중첩 루프 조인 (NLJ, Nested Loop Join) → N 개의 집합을 N 개의 중첩된 반복문을 사용해 조인하는 방법으로, 랜덤 접근에 대한 비용이 많이 증가하므로 대용량의 테이블에서는 사용하지 않는 방법입니다.
- 블록 중첩 루프 조인 (BNL, Block Nested Loop Join) → 조인 작업을 수행 할 테이블을 작은 블록으로 나누어서 블록 하나씩 조인 하는 방법입니다.
- 정렬 병합 조인 (Sort-Merage Join) → 각각의 테이블을 조인할 필드 기준으로 정렬하고 정렬이 끝난 이후에 조인 작업을 수행하는 방법입니다.
- 해시 조인 (Hash Join) → 인덱스를 사용할 수 없고 결과에 대하여 정렬이 필요하지 않을 경우에 사용하는 방법으로 해시 테이블을 이용하는 조인 방법입니다.
🚀 REFERENCE
Join (SQL) - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. join(조인) 또는 결합 구문은 한 데이터베이스 내의 여러 테이블의 레코드를 조합하여 하나의 열로 표현한 것이다. 따라서 조인은 테이블로서 저장되거나, 그 자
ko.wikipedia.org
[SQL 기초] 벤다이어그램으로 보는 JOIN
[BY 한빛미디어] 하나의 테이블에 원하는 데이터가 모두 있다면 참 좋겠지만, 두 개의 테이블을 엮어야 ...
m.post.naver.com
W3Schools.com
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
www.w3schools.com
SQL Joins Visualizer
Please select how do you want to do SQL JOIN between two table Copy SQL
sql-joins.leopard.in.ua
중첩 루프 조인 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전.
ko.wikipedia.org
블록 중첩 루프 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 블록 중첩 루프(BNL, Block nested loop) 이란 관계형 데이터베이스에서 두 개의 관계를 조인하는데 쓰이는 알고리즘이다.[1] 이 알고리즘[2]은 각각 outer와 inner로 표시
ko.wikipedia.org
면접을 위한 CS 전공지식 노트 : 네이버 도서
네이버 도서 상세정보를 제공합니다.
search.shopping.naver.com
해시 조인 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 해시 조인(hash join)은 조인 알고리즘의 한 예로써, 관계형 데이터베이스 관리 시스템의 구현에서 사용된다. 조인 알고리즘의 일은 해당 값을 갖고 있는 각각의
ko.wikipedia.org