본문 바로가기

SQL

SQL 프로그래머스: 없어진 기록 찾기

 

 

 

풀이 TIP
어떤 테이블 기준으로 JOIN 할지 생각한다.
(OUTS엔 있어야 하지만, INS에는 없는 NAME)
→ OUTS 테이블 기준으로, LEFT OUTER JOIN 해주자.

+

그냥 FROM TABLE1, TABLE2의 경우 WHERE로 조인해도 된다.

그러나 JOIN 함수 사용할 경우 ON으로 조인해주자.

 

 

 

 

1) INNER JOIN
2) OUTER JOIN

참고 사이트: https://hongong.hanbit.co.kr/sql-%EA%B8%B0%EB%B3%B8-%EB%AC%B8%EB%B2%95-joininner-outer-cross-self-join/ 

 

 

 

 

 

 

 

 

 

내 풀이

SELECT ANIMAL_OUTS.ANIMAL_ID, ANIMAL_OUTS.NAME
FROM ANIMAL_OUTS LEFT OUTER JOIN ANIMAL_INS
ON ANIMAL_OUTS.ANIMAL_ID = ANIMAL_INS.ANIMAL_ID
WHERE ANIMAL_OUTS.NAME IS NOT NULL AND ANIMAL_INS.NAME IS NULL
ORDER BY ANIMAL_ID