ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 프로그래머스 보호소에서 중성화된 동물 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의 상태에서는 중성화되어있어야 합니다. 

     

     

    반응형

    댓글

Designed by Who.