최대 1 분 소요

없어진 기록 찾기

문제 정리

천재지변으로 인해 일부 데이터가 유실되었습니다.
입양을 간 기록은 있는데, 보호소에 들어온 기록이 없는 동물의 ID와 이름을 ID 순으로 조회하는 SQL문을 작성해주세요.

풀이

SELECT A.animal_id, A.name
from animal_outs A
LEFT JOIN animal_ins B
ON A.animal_id = B.animal_id
where B.animal_id IS NULL
order by animal_id

정리

스크린샷 2022-05-05 오후 4 47 21

스크린샷 2022-05-05 오후 3 53 27

  • LEFT OUTER JOIN
    LEFT OUTER JOIN은 왼쪽에 오는 테이블을 기준으로, 오른쪽에 오는 테이블과 비교하여 조건에 맞는 값이 있으면 JOIN하여 가져오고, 값이 없으면 null 값을 표시한다.
    즉 LEFT OUTER JOIN은 이처럼 JOIN 문을 수행할 때, 왼쪽에 있는 데이터는 무조건 가져오며, 오른쪽에 오는 테이블과 JOIN을 수행하여 조건에 맞는 데이터가 없을 시 null 로 표시하게 된다.
  • LEFT OUTER JOIN을 줄여쓰면 LEFT JOIN이 된다. 또한, INNER JOIN을 줄여쓰면 그냥 JOIN이 된다.

참고

ChanBLOG
Join 깔끔한 이해와 사용법
INNER JOIN
OUTER JOIN



💛 개인 공부 기록용 블로그입니다. 👻

맨 위로 이동하기