프로그래머스_오랜 기간 보호한 동물(1)

임정민·2023년 5월 21일

SQL 문제풀이

목록 보기
33/53
post-thumbnail

SQL 공부중 입니다. ✍✍✍

문제

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

풀이

SELECT AI.NAME, AI.DATETIME
    FROM ANIMAL_INS AI
    LEFT OUTER JOIN ANIMAL_OUTS AO
    ON AI.ANIMAL_ID = AO.ANIMAL_ID
    WHERE AO.ANIMAL_ID IS NULL
    ORDER BY AI.DATETIME ASC
    LIMIT 3;

두 테이블 간 연결된 외래키 (ANIMAL_ID)를 기준으로 한 테이블에 없는 값을 추출하는 것이 포인트였습니다. 이를 위해 LEFT OUTER JOIN, WHERE IS NULL 구문을 통해 ANIMAL_INS에만 있고 ANIMAL_OUTS에는 없는 값 (보호소에 들어왔지만 아직 입양되지 못한 동물들)을 구할 수 있었습니다.🦝🦝🦝

저의 풀이 이외에 아래와 같이

SELECT NAME, DATETIME 
    FROM ANIMAL_INS
    WHERE ANIMAL_ID NOT IN (SELECT ANIMAL_ID FROM ANIMAL_OUTS)
    ORDER BY DATETIME
    LIMIT 3

서브쿼리로 간단히 해결한 풀이도 볼 수 있었습니다.🐔🐔🐔

감사합니다.🦨🦨🦨

profile
https://github.com/min731

0개의 댓글