인프런 커뮤니티 질문&답변

alsghdi159님의 프로필 이미지
alsghdi159

작성한 질문수

[백문이불여일타] 데이터 분석을 위한 중급 SQL

UNION, UNION ALL

full outer join 구현 관련

작성

·

888

0

안녕하세요.

다름이 아니라, full outer join 구현 관련하여

left join, right join을 union하면 합집합을 구할 수 있다고 말씀주셨습니다.

허나, A, B테이블을 굳이 join하지 않고 union해도 합집합의 테이블을 구현할 수 있지 않나라는 의문이 들어 질문드립니다.

무더위 조심하시고 좋은 하루 보내세요!

답변 1

1

이보민님의 프로필 이미지
이보민
지식공유자

안녕하세요 alsghdi159님,

우선 JOIN과 UNION은 동작 방식이 전혀 다르기 때문에 같은 결과를 만들수는 없습니다.

엑셀 사용하는 함수로 비유하면 JOIN은 VLOOKUP이고, UNION은 한 시트의 아래로 같은 형식의 다른 시트를 복사 붙여넣기 하는 것으로 생각하시면 됩니다. 아래 예시를 보고 합집합의 정의에 대해 조금 더 고민을 해보신 후 추가 질문이 있으시면 추가 질문 주세요 :)

예를 들어 국가별 선수 리스트 테이블과 올림픽 종목 리스트 테이블이 있는 경우. 아래와 같이 JOIN 후 UNION을 통해 합집합을 구할 수 있습니다.

JOIN을 하지 않고 UNION만 하려고 하는 경우 데이터를 단순 위아래로 병합하는 것이기 때문에 형식이 다른 두 테이블을 병합할 수 없습니다.

alsghdi159님의 프로필 이미지
alsghdi159

작성한 질문수

질문하기