IT/SQL

[MySQL] 프로그래머스 - 보호소에서 중성화한 동물

무지개는 환상 2024. 1. 24. 14:36

<ANIMAL_INS> & <ANIMAL_OUTS> 테이블 구조

ANIMAL_INS 테이블
ANIMAL_OUTS 테이블

 

<문제>

 

 

 

<문제 풀이>

SELECT I.ANIMAL_ID,
    I.ANIMAL_TYPE,
    I.NAME
FROM ANIMAL_INS AS I
    LEFT JOIN ANIMAL_OUTS AS O
    ON I.ANIMAL_ID = O.ANIMAL_ID

WHERE I.SEX_UPON_INTAKE LIKE 'Intact%'
    AND I.ANIMAL_ID in (SELECT ANIMAL_ID
                        FROM ANIMAL_OUTS
                        WHERE SEX_UPON_OUTCOME LIKE 'Spayed%'
                        OR SEX_UPON_OUTCOME LIKE 'Neutered%')
ORDER BY 1

 

지난번에 풀이한 ANIMAL_INS 테이블 유실 사건 케이스와 비슷하다.

다만 이번에는 IN 테이블을 기준으로 OUT 테이블을 LEFT JOIN 하였다.

그리고 두 테이블의 중성화 컬럼에서 해당하는 문자열들이 들어가 있는지 LIKE 함수를 이용하였다.

 

 

출처 : 프로그래머스 - 보호소에서 중성화한 동물