[JOIN] 오랜 기간 보호한 동물(1)

쥬쥬스·2023년 8월 4일
0

SQL

목록 보기
27/67
post-thumbnail

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

🧵 조건

  • 입양을 못 간 동물
  • 가장 오래 보호소에 있었던 순으로 3마리
  • 이름과 보호 시작일 조회
  • 정렬은 보호 시작일 순으로

sql 코드

SELECT I.NAME, I.DATETIME
FROM ANIMAL_INS I LEFT JOIN ANIMAL_OUTS O ON I.ANIMAL_ID = O.ANIMAL_ID 
WHERE O.DATETIME IS NULL
ORDER BY I.DATETIME LIMIT 3
  • LEFT 조인을 사용하고 WHERE절에서 OUTS 테이블이 비어있는 경우만 추출
  • 가장 오래 보호소에 있었던 순으로 3마리 : LIMIT을 걸어줌

NOT IN 을 사용한 경우

SELECT NAME, DATETIME
FROM ANIMAL_INS
WHERE ANIMAL_ID not in (
    select ANIMAL_ID
    from ANIMAL_OUTS
) 
ORDER BY DATETIME LIMIT 3
profile
느려도... 꾸준히.....🐌

0개의 댓글