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

Soohyeon B·2022년 11월 4일
0

SQL

목록 보기
14/19

문제

아직 입양을 못 간 동물 중, 가장 오래 보호소에 있었던 동물 3마리의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요. 이때 결과는 보호 시작일 순으로 조회해야 합니다.

풀이

테이블이 일단 두개이다.
1. ANIMAL_INS : ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE
2. ANIMAL_OUTS: ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME

풀이 1

SELECT ANIMAL_INS.NAME, ANIMAL_INS.DATETIME FROM ANIMAL_INS
LEFT JOIN ANIMAL_OUTS
ON ANIMAL_INS.ANIMAL_ID = ANIMAL_OUTS.ANIMAL_ID
WHERE ANIMAL_OUTS.ANIMAL_ID IS NULL 
ORDER BY ANIMAL_INS.DATETIME

-> 틀림

풀이 2

-- 코드를 입력하세요
-- LEFT JOIN 사용
SELECT A.NAME, A.DATETIME
FROM ANIMAL_INS A
LEFT JOIN ANIMAL_OUTS B
ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE B.ANIMAL_ID IS NULL
ORDER BY A.DATETIME
LIMIT 3

-> 마지막에 LIMIT3으로 동물 3마리로 국한시키지 않아서 풀이 1이 틀렸던 거였음

profile
하루하루 성장하는 BE 개발자

0개의 댓글