웹 개발 한걸음

[SQL] Left Join과 Inner Join 간단 정리

Egu99 2021. 8. 12. 15:47

 

    0. 관계형 데이터 베이스    

 

  • Join은 관계형 데이터베이스의 꽃이라 불릴 정도로 중요한 연산자이다. 
  • 관계형 데이터베이스는 중복 데이터를 피하기 위해서 데이터를 쪼개 여러 테이블로 나눠서 저장한 데이터베이스 모델이다.
  • Join은 이렇게 쪼개둔 테이블들을 목적에 따라 다시 합쳐 원하는 결과를 얻어내고자 사용한다. 

  • 예시로 이렇게 쪼개둔 A테이블과 B테이블이 있다하자. 

 

 


 

    1. Inner Join    

 

 

  • Inner Join은 A테이블과 B테이블 모두에서 존재하는 행을 모아 하나의 행을 만드는 방법.
  • A와 B의 교집합을 얻을 수 있다.

 

 

 

 


    2. LEFT Outer Join    

 

 

  • Left Outer Join을 많이 써서 LEFT로 예시를 둠.
  • Left join은 기준이 되는 테이블을 왼쪽에 두고 이를 기준으로 다른 테이블을 합성하여 하나의 표로 만드는 방법.
  • A와 B의 합집합을 얻을 수 있다. 

 

 

  • A의 key에 해당하는 게 없으면  null로 채워진다. 

 


그럼 이건 어떨까?

 

 

  • B테이블에는 없고 A테이블에만 있는 것 => B.key가 Null인 경우이다.

 

 


그럼 IS NULL이 아닌 IS NOT NULL은?

 

  • Inner Join과 결과가 같다.

 

 

 

 

 

 

♣ 참고 및 인용