• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    미해결

inner join 과 left join

23.02.19 23:07 작성 조회수 315

1

inner join 과 left join 에서 null 값 처리방법이 궁금합니다.

left join 하면 join 된 테이블에 null 값이 있으면, 그대로 null 로 들어가고,

inner join 은 null 값이 있는 데이터는 아예 무시되는 것이 맞나요?

답변 1

답변을 작성해보세요.

0

select ...
from a
  inner join b on a.co = b.co

위 쿼리에서 'co'라는 이름을 가진 컬럼이 조인 키로 사용됩니다.

만약 a 테이블의 co 컬럼과 b 테이블의 co 컬럼 양쪽에 null 데이터가 있다면 null끼리 조인이 되어 결과값에 포함됩니다.

둘 중 a 테이블의 co 컬럼에만 null이 있을 때 inner join을 하면 동일한 값(null)을 b에서 찾을 수 없으므로 a의 null이 반환되지 않습니다. 이 때 a 테이블을 기준으로 left join을 한다면 a의 null이 담긴 row가 반환됩니다.