반응형
이번 글에서는 FULL OUTER JOIN을 사용하여 양쪽 테이블(industry_group_symbol, nasdaq_company)의 모든 데이터를 포함하는 조인 방식을 실습했습니다.
이 방식은 두 테이블 중 어디에도 매칭되지 않는 데이터를 포함한 전체 비교가 필요할 때 유용합니다.
📌 예제 코드 ①: 전체 조인 결과 확인
SELECT
a.symbol AS a_symbol,
b.symbol AS b_symbol
FROM industry_group_symbol AS a
FULL OUTER JOIN nasdaq_company AS b
ON a.symbol = b.symbol;
💬 설명
- industry_group_symbol과 nasdaq_company 테이블을 symbol 기준으로 결합
- 양쪽 테이블 모두 포함하되, 매칭되지 않는 경우 NULL로 표시
- LEFT JOIN + RIGHT JOIN을 합친 효과
📌 예제 코드 ②: 조인되지 않은 항목만 필터링
SELECT
a.symbol AS a_symbol,
b.symbol AS b_symbol
FROM industry_group_symbol AS a
FULL OUTER JOIN nasdaq_company AS b
ON a.symbol = b.symbol
WHERE a.symbol IS NULL OR b.symbol IS NULL;
💬 설명
- 조인 조건에 매칭되지 않은 항목들만 필터링
- a.symbol IS NULL: industry_group_symbol에 없는 symbol
- b.symbol IS NULL: nasdaq_company에 없는 symbol
💻 실행 결과 예시
- 첫 번째 쿼리는 양쪽 테이블의 모든 symbol을 포함해 보여줍니다.
- 두 번째 쿼리는 서로 매칭되지 않은 symbol만 필터링하여 보여줍니다.
💬 코드 설명
- FULL OUTER JOIN: 양쪽 모두 포함하여 조인 (매칭 실패 시 NULL)
- WHERE a.symbol IS NULL OR b.symbol IS NULL: 조인되지 않은 행만 추출
- 데이터 비교, 불일치 항목 확인, 동기화 검사 등에 활용
💡 포인트 정리
- FULL OUTER JOIN: LEFT + RIGHT JOIN 합성
- 매칭되지 않은 모든 데이터까지 확인 가능
- 불일치 항목만 필터링할 때는 IS NULL 조건 사용
- 두 테이블 간 전체 비교 및 누락 검출에 유용
📌 정리하자면, 이번 강의에서는 FULL OUTER JOIN을 사용하여 양쪽 테이블의 전체 데이터를 포괄적으로 조인하고,
조인되지 않은 데이터까지 포함한 결과를 확인하는 방법을 실습했습니다.
이 방식은 특히 데이터 일치 여부를 전수 조사하거나, 누락된 데이터를 식별할 때 매우 유용합니다.
'SQL Server > 실기 정리' 카테고리의 다른 글
SQL Server 34강 - IN 서브쿼리와 조인을 결합한 조건 필터링 (2) | 2025.06.04 |
---|---|
SQL Server 33강 - 단일행 서브쿼리 (Single Row Subquery) 사용하기 (0) | 2025.06.04 |
SQL Server 32강 - 모든 행의 조합을 반환하는 CROSS JOIN (2) | 2025.06.04 |
SQL Server 30강 - 오른쪽 기준 조인 RIGHT JOIN (0) | 2025.06.04 |
SQL Server 29강 - 기준 테이블을 기준으로 연결하는 LEFT JOIN (0) | 2025.06.04 |
SQL Server 28강 - 다중 INNER JOIN을 활용한 테이블 결합 (1) | 2025.06.04 |