728x90
programmers.co.kr/learn/courses/30/lessons/59044
JOIN을 이용해서 풀었는데 들어왔지만 나가지 않은 동물 중 기간이 오래된 3마리를 출력하는 것이다.
INS에 LEFT JOIN OUTS를 해주었고, 나가지 않았다면 OUTS에 정보가 없을 것이므로
OUTS.ANIMAL_ID IS NULL로 제외시켰다.
또한 상위 3개만 뽑는 것은 LIMIT N을 사용하면 된다.
SELECT A.NAME, A.DATETIME
FROM ANIMAL_INS AS A
LEFT JOIN ANIMAL_OUTS AS B
ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE B.ANIMAL_ID IS NULL
ORDER BY A.DATETIME ASC
LIMIT 3
728x90
'문제 풀이 > 프로그래머스 알고리즘, SQL' 카테고리의 다른 글
[프로그래머스 SQL] 루시와 엘라 찾기(문자열 like, regexp) (0) | 2021.02.23 |
---|---|
[프로그래머스 SQL] 보호소에서 중성화한 동물(join) (0) | 2021.02.23 |
[프로그래머스 SQL] 있었는데요, 없었습니다 (join) (0) | 2021.02.23 |
[프로그래머스 SQL] NULL 처리하기 (0) | 2021.02.23 |
[프로그래머스] SQL 문제 정리 (0) | 2021.01.20 |