문제
풀이
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.NAME IS NULL AND INS.NAME IS NOT NULL
ORDER BY INS.DATETIME ASC LIMIT 3 ;
- 지금까지와 비슷한 문제인데 이번엔 LEFT JOIN을 통해서 INS 테이블을 남긴다.
- 이번에도 차집합 조건이고 차집합 후에 남는 NULL 값도 없애준다.
- DATETIME으로 순서를 정렬해주고 LIMIT 3을 통해서 3개까지면 값을 나타내준다.
출처
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
'알고리즘 > SQL' 카테고리의 다른 글
[프로그래머스] Level 2. 루시와 엘라 찾기 (0) | 2021.02.25 |
---|---|
[프로그래머스] Level 4. 보호소에서 중성화한 동물 (0) | 2021.02.24 |
[프로그래머스] Level 3. 있었는데요 없었습니다 (0) | 2021.02.22 |
[프로그래머스] Level 3. 없어진 기록 찾기 (0) | 2021.02.21 |
[프로그래머스] Level 2. NULL 처리하기 (0) | 2021.02.20 |