Programing/데이터베이스(MySQL)

[프로그래머스] 보호소에서 중성화한 동물 (Level 4)

hye3193 2023. 12. 8. 22:56

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

select ins.animal_id, ins.animal_type, ins.name
from animal_ins as ins inner join animal_outs as outs
    on ins.animal_id = outs.animal_id
where sex_upon_intake like 'Intact%'
    and (sex_upon_outcome like 'Spayed%' or sex_upon_outcome like 'Neutered%')
order by ins.animal_id

 

문제: 보호소에 들어올 당시에는 중성화되지 않았지만, 보호소를 나갈 당시에는 중성화된 동물의 아이디와 생물 종, 이름을 조회하는 아이디 순으로 조회하는 SQL 문을 작성해주세요.

(중성화를 거치지 않은 동물은 성별 및 중성화 여부에 Intact, 중성화를 거친 동물은 Spayed 또는 Neutered라고 표시되어있습니다.)

 

우선 animal_ins랑 animal_outs를 이너 조인

다음은 sex_upon_intake는 intact% (Intact Male 이런 식으로 나와 있어서 % 붙여줘야 함)이고

sex_upon_outcome일 때는 spayed% 혹은 neutered%인 경우를 where문으로 선택해서

 

order by로 id 순 정렬했다