[SQL-CodingTest] Lv3. 없어진 기록 찾기
없어진 기록 찾기
문제 정리
천재지변으로 인해 일부 데이터가 유실되었습니다.
입양을 간 기록은 있는데, 보호소에 들어온 기록이 없는 동물의 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
정리
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
💛 개인 공부 기록용 블로그입니다. 👻