-
프로그래머스 보호소에서 중성화된 동물 ORACLE | 오라클프로그래머스 SQL 2022. 1. 13. 14:55반응형
예시
예를 들어, ANIMAL_INS 테이블과 ANIMAL_OUTS 테이블이 다음과 같다면
ANIMAL_INS
ANIMAL_ID ANIMAL_TYPE DATETIME INTAKE_CONDITION NAME SEX_UPON_INTAKE
A367438 Dog 2015-09-10 16:01:00 Normal Cookie Spayed Female A382192 Dog 2015-03-13 13:14:00 Normal Maxwell 2 Intact Male A405494 Dog 2014-05-16 14:17:00 Normal Kaila Spayed Female A410330 Dog 2016-09-11 14:09:00 Sick Chewy Intact Female ANIMAL_OUTS
ANIMAL_ID ANIMAL_TYPE DATETIME INTAKE_CONDITION NAME SEX_UPON_OUTCOME
A367438 Dog 2015-09-12 13:30:00 Cookie Spayed Female A382192 Dog 2015-03-16 13:46:00 Maxwell 2 Neutered Male A405494 Dog 2014-05-20 11:44:00 Kaila Spayed Female A410330 Dog 2016-09-13 13:46:00 Chewy Spayed Female - Cookie는 보호소에 들어올 당시에 이미 중성화되어있었습니다.
- Maxwell 2는 보호소에 들어온 후 중성화되었습니다.
- Kaila는 보호소에 들어올 당시에 이미 중성화되어있었습니다.
- Chewy는 보호소에 들어온 후 중성화되었습니다.
따라서 SQL문을 실행하면 다음과 같이 나와야 합니다.
ANIMAL_ID ANIMAL_TYPE NAME
A382192 Dog Maxwell 2 A410330 Dog Chewy -- 코드를 입력하세요 SELECT A.ANIMAL_ID, A.ANIMAL_TYPE, A.NAME FROM ANIMAL_INS A, ANIMAL_OUTS B WHERE 1=1 AND A.ANIMAL_ID = B.ANIMAL_ID AND A.SEX_UPON_INTAKE NOT IN ('Spayed Female', 'Neutered Male') --중성화안된아이들 AND B.SEX_UPON_OUTCOME IN ('Spayed Female', 'Neutered Male') -- 중성화완료 ORDER BY 1 ASC;
=> 단순 JOIN문을 활용하면 되는 문제입니다.
=> 중성화된 여성과 중성화된 남성은 영단어가 다릅니다.
=> INS의 상태에서는 중성화되어있지 않아야 하며, OUTS의 상태에서는 중성화되어있어야 합니다.
반응형'프로그래머스 SQL' 카테고리의 다른 글
프로그래머스 중성화 여부 파악하기 (0) 2022.01.22 이름에 el이 들어가는 동물 찾기 ORACLE || 오라클 (0) 2022.01.14 프로그래머스 오랜기간 보호한 동물(1) | ORACLE | 오라클 (0) 2022.01.12 SQL 이름이 없는 동물의 아이디 (0) 2021.12.04 없어진 기록 찾기 | ORACLE (0) 2021.11.30