-
[면접 준비] JOIN 설명하기면접 준비 2024. 8. 14. 09:34
학습 키워드: join, DB2024-08-14 면접 카타 질문
JOIN이 무엇인지 설명해주세요:
JOIN은 여러 개의 테이블 내 row들을 연관된 column을 기준으로 묶어서 하나의 결과를 만들어내는 작업입니다. SQL에서는 여러 가지 유형의 JOIN을 지원하며, 각각의 JOIN은 특정한 조건에 따라 데이터를 결합합니다.
- INNER JOIN: 두 테이블에서 일치하는 데이터를 기준으로 결합합니다. 즉, 양쪽 테이블에 모두 존재하는 레코드만 결과로 반환됩니다. JOIN 키워드만 사용하는 경우 기본적으로 INNER JOIN을 사용합니다.
- LEFT JOIN (LEFT OUTER JOIN): 왼쪽 테이블의 모든 데이터를 반환하고, 오른쪽 테이블에서 일치하는 데이터가 있을 경우 그 데이터를 함께 반환합니다. 오른쪽 테이블에 일치하는 데이터가 없으면 NULL로 채워집니다.
- RIGHT JOIN (RIGHT OUTER JOIN): LEFT JOIN과 반대로, 오른쪽 테이블의 모든 데이터를 반환하고, 왼쪽 테이블에서 일치하는 데이터가 있을 경우 그 데이터를 함께 반환합니다. 왼쪽 테이블에 일치하는 데이터가 없으면 NULL로 채워집니다.
- FULL OUTER JOIN: 두 테이블의 모든 데이터를 반환합니다. 왼쪽 또는 오른쪽 테이블에 일치하는 데이터가 없으면 NULL로 채워집니다. 따라서 두 테이블의 모든 행이 결과에 포함됩니다.
- CROSS JOIN: 두 테이블의 모든 가능한 조합을 생성합니다. 즉, 첫 번째 테이블의 각 행이 두 번째 테이블의 모든 행과 결합됩니다. 이는 두 테이블 간의 곱집합(Cartesian Product, 혹은 데카르트 곱)를 생성하며, 특정 조건 없이 모든 조합이 필요한 경우에 사용됩니다.
JOIN을 사용하면 여러 테이블에 분산된 데이터를 결합하여 필요한 정보를 얻거나 합쳐진 데이터를 토대로 새로운 정보를 도출하는데 유용합니다.
--
728x90'면접 준비' 카테고리의 다른 글
[면접 준비] NoSQL 설명 및 RDBMS 와의 차이점 설명하기 (0) 2024.08.16 [면접 준비] 무결성 설명하기 (0) 2024.08.14 [면접 준비] 정규화 및 정규화의 목적 설명하기 (0) 2024.08.13 [면접 준비] Primary Key, Foreign Key, ER 모델이란? (0) 2024.08.13 [면접 준비] 해시 테이블과 이진 검색트리 비교하기 (0) 2024.08.13