SQL 문제
문제 51. 없어진 기록 찾기(RIGHT JOIN)
kagan-draca
2024. 7. 26. 14:34
문제를 보고 INNER JOIN을 사용 했었는데 아무 결과도 출력되지 않아 애먹었다.
다른 사람의 코드를 보니깐, INNER JOIN이 아니라
RIGHT JOIN을 사용해야 했다.
RIGHT JOIN을 사용하는 근거로는
ANIMAL_INS 테이블에 ANIMAL_ID는 유실됐지만,
ANIMAL_OUTS 테이블에 ANIML_ID는 존재하는
상황이기 때문이었다.
A : ANIMAL_INS, B : ANIMAL_OUTS
RIGHT JOIN 이후, WHERE에서 A.ANIMAL_ID IS NULL과
SELECT B.ANIMAL_ID, B.NAME으로
ANIMAL_INS에는 ID가 없는
ANUMAL_OUTS의 ID와 이름을 출력하는 방식이었다.
제출한 코드 :
SELECT B.ANIMAL_ID, B.NAME
FROM ANIMAL_INS AS A RIGHT JOIN ANIMAL_OUTS AS B
ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE A.ANIMAL_ID IS NULL
ORDER BY A.ANIMAL_ID ASC, A.NAME ASC