Coding Test/SQL 연습 문제

프로그래머스/MySQL - JOIN 04. 없어진 기록 찾기

parkes811 2023. 1. 17. 20:07
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

  • 문제 

 

  • 코드 및 문제 풀이 
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 B.ANIMAL_ID ASC

- 입양을 간 기록은 있는데, 보호소에 들어온 기록이 없는 동물을 조회하기 위해 LEFT, RIGHT JOIN을 통해 두 개의 테이블을 JOIN하였습니다.

- 이 때 RIGHT JOIN을 사용하기 위해 B 테이블의 ID와 A 테이블의 ID가 같을 때 라는 ON 조건을 이용했고, WHERE 에서 A.ANIMAL_ID 가 NULL 인 것들이 유실된 데이터인 것을 알 수 있습니다.