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

2022. 1. 30. 23:25Computer Science/Algorithm

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

SELECT INS.NAME, INS.DATETIME
FROM ANIMAL_INS AS INS LEFT JOIN ANIMAL_OUTS AS OUTS 
ON INS.ANIMAL_ID=OUTS.ANIMAL_ID
WHERE OUTS.ANIMAL_ID IS NULL 
ORDER BY INS.DATETIME ASC LIMIT 3
  1. 아직 입양을 못간 동물(OUTS TABLE에서 ID가 NULL)을 조회 
    - 입양을 못간 동물은 INS TABLE에는 있으나 OUTS TABLE에는 없는 레코드를 의미
    - 두 테이블을 JOIN 한 이후 OUTS TABLE에서 ID가 존재 하지 않는 레코드를 조회한다.
       (WHERE OUTS.ANIMAL_ID IS NULL)
  2. 보호시작일 순으로, 3마리의 이름과 보호시작일을 조회
    - LIMIT으로 3개의 행만 조회
반응형