~고군분투 인생살이~

[JOIN] 없어진 기록 찾기 본문

SQL/프로그래머스

[JOIN] 없어진 기록 찾기

소금깨 2022. 5. 21. 22:50

1 문제 설명 

2. 문제 예시 

 

3. 풀이 과정

  • 입양을 간 기록은 있는데(ANIMAL_OUTS) 입양을 온 기록은 없는(ANIMAL_INS) 동물의 ID와 이름

=> ANIMAL_OUTS를 기준으로 ANIMAL_INS 테이블을 LEFT JOIN 한다

     => LEFT JOIN하게 될 경우, 왼쪽에 오는 테이블을 기준으로 오른쪽에 오는 테이블과 비교하여 조건에 맞는 값이 있으면

          JOIN하여 가져오고, 값이 없으면 NULL 값을 표시한다.

=> 입양 온 기록이 없는 동물의 ID와 이름을 찾아달라고 했으니, INS.ANIMAL_ID가 NULL인 값을 WHERE절을 활용 해 조건을 걸어주자

=> ID 순으로 정렬하라 했으니 ORDER BY ANIMAL_ID 

4. 정답

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 1;
Comments