programmers.co.kr/learn/courses/30/lessons/59044
코딩테스트 연습 - 오랜 기간 보호한 동물(1)
ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디
programmers.co.kr
SELECT INS.NAME, INS.DATETIME
FROM ANIMAL_INS INS
LEFT OUTER JOIN ANIMAL_OUTS OUTS
ON INS.ANIMAL_ID = OUTS.ANIMAL_ID
WHERE OUTS.NAME IS NULL AND INS.NAME IS NOT NULL
ORDER BY INS.DATETIME
LIMIT 3;
아직 입양을 못 간 동물을 조회해야 하므로, LEFT를 INS로 하고 OUTS을 조인한다.
INS에 이름이 있지만 OUTS에 이름이 없다면 아직 입양을 못 갔다는 뜻이다.
마지막으로 INS.DATETIME을 기준으로 오름차순 정렬하고 총 3개의 데이터만 출력하게 한다.
SELECT NAME, DATETIME
FROM ANIMAL_INS
WHERE ANIMAL_ID NOT IN (
SELECT ANIMAL_ID
FROM ANIMAL_OUTS
)
ORDER BY DATETIME
LIMIT 3;
JOIN을 활용하지 않은 풀이도 충분히 가능하다.
'PS > SQL' 카테고리의 다른 글
[프로그래머스-SQL-String, Date] 루시와 엘라 찾기 (0) | 2021.03.17 |
---|---|
[프로그래머스-SQL-JOIN] 보호소에서 중성화한 동물 (0) | 2021.03.17 |
[프로그래머스-SQL-JOIN] 있었는데요 없었습니다 (0) | 2021.03.17 |
[프로그래머스-SQL-JOIN] 없어진 기록 찾기 ❌ (0) | 2021.03.17 |
[프로그래머스-SQL-IS NULL] NULL 처리하기 ❌ (0) | 2021.03.17 |