프로그래머스 >> JOIN >> 없어진 기록 찾기


프로그래머스 » JOIN » 없어진 기록 찾기(MySQL)

문제

pro_join1-1.jpg

예시

pro_join1-2.jpg

코드

-- 없어진 기록 찾기 out에는 있는데 in에 없는거
SELECT ANIMAL_ID, NAME
FROM ANIMAL_OUTS
EXCEPT
SELECT a.ANIMAL_ID, a.NAME FROM ANIMAL_INS as a JOIN ANIMAL_OUTS as b WHERE a.ANIMAL_ID = b.ANIMAL_ID

SELECT OUTS.ANIMAL_ID, OUTS.NAME
FROM ANIMAL_OUTS OUTS
LEFT OUTER JOIN ANIMAL_INS INS
ON OUTS.ANIMAL_ID = INS.ANIMAL_ID
WHERE INS.ANIMAL_ID is NULL
ORDER BY OUTS.ANIMAL_ID

학습

내부 조인(natural join) : 겹치는거
아우터 조인 : 조인 후 없는 행 null 처리(left outer, right outer, full outer)
크로스 조인 : 두 테이블 모든 행 곱하기
EXCEPT(차집합)





© 2021.07. by 전은성

Powered by 전은성