본문 바로가기
카테고리 없음

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

by bjgu97 2022. 4. 3.
반응형

들어올 때는 중성화가 안되어있지만, 나갈때는 중성화가 되어있는 동물을 구해야 한다.

 

1) INNER JOIN을 이용해 ANIMAL_INS와 ANIMAL_OUTS의 모든 동물을 구한다.

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

 

 

2) 이때 조건을 걸어 들어올때는 중성화가 되어있지 않는(Intact~), 나갈 때는 중성화가 되어있는(Spayed~, Neutered~) 동물을 찾는다. 

* 문자열이 포함되어있는 데이터 구하기 : LIKE

SELECT I.ANIMAL_ID, I.ANIMAL_TYPE, I.NAME
FROM ANIMAL_INS I INNER JOIN ANIMAL_OUTS O
ON I.ANIMAL_ID = O.ANIMAL_ID
WHERE I.SEX_UPON_INTAKE LIKE "Intact%"
AND (O.SEX_UPON_OUTCOME LIKE "Spayed%" OR O.SEX_UPON_OUTCOME LIKE "Neutered%")

 

3) 동물 아이디로 정렬

SELECT I.ANIMAL_ID, I.ANIMAL_TYPE, I.NAME
FROM ANIMAL_INS I INNER JOIN ANIMAL_OUTS O
ON I.ANIMAL_ID = O.ANIMAL_ID
WHERE I.SEX_UPON_INTAKE LIKE "Intact%"
AND (O.SEX_UPON_OUTCOME LIKE "Spayed%" OR O.SEX_UPON_OUTCOME LIKE "Neutered%")
ORDER BY I.ANIMAL_ID

댓글