OUTER JOIN(외부 조인)

Nux·2022년 10월 6일
0


230203 내용추가

outer join

  • 조인 조건에 만족되지 않는 행까지 출력

left(right) outer join

  • left (outer) join: 왼쪽의 테이블이 모두 출력
  • right (outer) join: 오른쪽의 테이블이 모두 출력
  • 일치하지 않는 데이터(left join-오른쪽 테이블/right join-왼쪽 테이블)는 null로 출력
select a.*, b.*
from emp a 
     right outer join dept b on a.deptno=b.deptno;
  • left outer join
  • right outer join

full outer join

  • 테이블 관계없이 일치하지 않는 데이터를 모두 null로 출력
select a.*, b.*
from emp a
    full outer join dept b on a.deptno=b.deptno;

기타

  • A테이블에 성별, B테이블에 학생 데이터가 있을 때(1:n), join 후 A테이블 데이터 당 하나의 값만 뽑고 싶을 경우
    • group by를 이용하면 하나의 값만 출력 됨
select *
from a left outer join b on a.gender=b.gender
group by a.gender
  • only join
select a.*, b.*
from emp a
    full outer join dept b on a.deptno=b.deptno
where a.deptno is null;

0개의 댓글