쥬니어 분석가

SQL 프로그래머스 - 보호소에서 중성화한 동물 본문

sql

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

jyuuni 2023. 5. 30. 18:42
반응형

보호소에서 중성화한 동물

  • 동물 보호소에 들어온 동물의 정보를 담은 ANIMAL_INS 테이블
ANIMAL_ID ANIMAL_TYPE DATETIME INTAKE_CONDITION NAME SEX_UPON_INTAKE
동물 ID 동물 종 보호 시작일 보호 시작 시 상태 이름 성별 및 중성화 여부
 
  • 동물 보호소에서 입양 보낸 동물의 정보를 담은 ANIMAL_OUTS 테이블
ANIMAL_ID ANIMAL_TYPE DATETIME NAME SEX_UPON_INTAKE
동물 ID 동물 종 입양일 이름 성별 및 중성화 여부
* ANIMAL_ID는 ANIMAL_INS의 ANIMAL_ID의 외래 키

문제

보호소에서 중성화 수술을 거친 동물 정보를 알아보려 합니다. 보호소에 들어올 당시에는 중성화[1]되지 않았지만, 보호소를 나갈 당시에는 중성화된 동물의 아이디와 생물 종, 이름을 조회하는 아이디 순으로 조회하는 SQL 문을 작성해주세요.

 

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

 

문제 풀이

SELECT I.ANIMAL_ID, I.ANIMAL_TYPE, I.NAME
FROM ANIMAL_INS AS I RIGHT JOIN ANIMAL_OUTS AS O
ON I.ANIMAL_ID = O.ANIMAL_ID
WHERE I.SEX_UPON_INTAKE LIKE '%Intact%' AND O.SEX_UPON_OUTCOME REGEXP 'Spayed|Neutered'
ORDER BY I.ANIMAL_ID ASC

문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/59045

반응형