코딩 테스트/SQL

[SQL] 없어진 기록 찾기

sangjin98 2024. 3. 15. 00:15
반응형

문제

https://school.programmers.co.kr/learn/courses/30/lessons/59042

 

프로그래머스

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

programmers.co.kr

문제 분석

ANIMAL_INS 와 ANIMAL_OUTS 두 테이블이 있다.

ANIMAL_INS 는 보호소에 들어온 동물의 정보이고 ANIMAL_OUTS 은 입양을 보낸 동물의 정보를 담은 테이블이다.

 

문제에서는 입양된 기록은 있지만 보호소에 들어온 정보는 없는 레코드들을 찾아야 한다.

 

해당 문제를 풀기 위해서는 ANIMAL_OUTS 과 ANIMAL_INS 를 LEFT JOIN 하고 ANIMAL_INS 에 대한 정보가 비어있는 튜플을 찾으면 된다.

코드

SELECT O.ANIMAL_ID, O.NAME
FROM ANIMAL_OUTS AS O LEFT JOIN
    ANIMAL_INS AS I ON O.ANIMAL_ID = I.ANIMAL_ID
WHERE I.ANIMAL_ID IS NULL;
반응형