2024. 4. 29. 10:17ㆍ공부/면접 준비
1. 내부 조인
- 설명
INNER JOIN은 두 테이블 모두에 일치하는 항목이 하나 이상 있을 때 행을 반환합니다.
두 테이블의 값이 일치하는 행만 검색합니다.
- 장점
인덱싱된 열로 작업할 때 효율적이고 빠릅니다.
일치하지 않는 행을 제거하여 데이터 처리를 단순화할 수 있습니다.
- 단점
일치하지 않는 두 테이블의 행을 제외합니다.
일치하는 항목이 없으면 빈 세트가 될 수 있습니다.
- 사용 사례
두 테이블 모두에 해당 항목이 있는 결과만 원하는 경우에 사용됩니다. 예를 들어, 해당 고객 세부정보가 포함된 모든 주문을 검색합니다.
2. LEFT JOIN(또는 LEFT OUTER JOIN)
- 설명
LEFT JOIN은 왼쪽 테이블의 모든 행과 오른쪽 테이블의 일치하는 행을 반환합니다.
일치하는 항목이 없으면 오른쪽 테이블 쪽의 결과가 NULL이 됩니다.
- 장점
기본(왼쪽) 테이블의 모든 레코드가 조인 결과에 나타나는지 확인합니다.
오른쪽 테이블에 해당 항목이 없는 레코드를 찾는 데 유용합니다.
- 단점
왼쪽 테이블에 행이 많으면 큰 결과 집합이 생성될 수 있습니다.
오른쪽에 일치 항목이 없는 왼쪽 테이블에 행이 있는 경우 많은 NULL 값이 포함될 수 있습니다.
- 사용 사례
다른 테이블에 해당 항목이 없는 한 테이블의 항목을 찾는 데 유용합니다. 예를 들어 주문하지 않은 모든 고객을 찾습니다.
3. RIGHT JOIN(또는 RIGHT OUTRER JOIN)
- 설명
RIGHT JOIN은 오른쪽 테이블의 모든 행과 왼쪽 테이블의 일치하는 행을 반환합니다.
일치하는 항목이 없으면 왼쪽 테이블 쪽의 결과는 NULL입니다.
- 장점
보조(오른쪽) 테이블의 모든 레코드가 조인 결과에 나타나는지 확인합니다.
- 단점
LEFT JOIN과 비슷하지만 테이블을 전환하여 언제든지 RIGHT JOIN을 LEFT JOIN으로 다시 작성할 수 있으므로 덜 자
주 사용됩니다.
- 사용 사례
LEFT JOIN과 유사하지만 반대 관점입니다. 예를 들어, 주문되지 않은 제품을 포함하여 모든 제품 및 이와 관련된 모든 주
문을 나열합니다.
4. OUTER JOIN
- 설명
FULL OUTER JOIN은 테이블 중 하나에 일치 항목이 있을 때 행을 반환합니다.
일치 항목이 없으면 결과에는 일치 항목이 없는 테이블의 모든 열에 대한 NULL 값이 포함됩니다.
- 장점
가능한 경우 일치하는 항목과 함께 두 테이블의 전체 그림을 제공합니다.
- 단점
MySQL에서는 기본적으로 지원되지 않습니다. 일반적으로 UNION과 함께 LEFT 및 RIGHT JOIN의 조합을 사용하여 이
를 에뮬레이트합니다.
매우 큰 데이터 세트가 생성되고 많은 NULL 값이 포함될 수 있습니다.
- 사용 사례
두 데이터 세트에서 일치하지 않는 레코드를 확인해야 하는 비교 또는 전체 동기화 작업에 유용합니다.
INNER JOIN은 표준 관계형 데이터 작업에 가장 일반적이며, LEFT 및 RIGHT JOIN은 한쪽의 모든 레코드 목록이 필요한 보고서에 필수적입니다. 가상의 FULL OUTER JOIN은 일치 여부에 관계없이 양쪽의 레코드를 포함해야 하는 포괄적인 비교에 유용합니다.
'공부 > 면접 준비' 카테고리의 다른 글
[면접준비] EFK와 ELK - Logstash와 Fluentd (24/06/11) (0) | 2024.06.11 |
---|---|
[면접준비] MVC패턴 (24/04/30) (0) | 2024.04.30 |
[면접준비] JWT + Node.js 질문 (24/04/25) (0) | 2024.04.25 |
[면접준비] 해시테이블과 이진 검색 트리 (24/04/24) (0) | 2024.04.24 |
[면접준비] 프로그래밍 패러다임 (24/04/23) (0) | 2024.04.23 |