![[프로그래머스] JOIN LV.3 - 없어진 기록 찾기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyY8Gj%2FbtsMFvZcWaP%2FyxiARwZJKELycLuvKoCmc0%2Fimg.png)
https://school.programmers.co.kr/learn/courses/30/lessons/59042
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
SELECT O.ANIMAL_ID, O.NAME
FROM ANIMAL_OUTS AS O
LEFT JOIN ANIMAL_INS AS I
ON O.ANIMAL_ID = I.ANIMAL_ID
WHERE I.ANIMAL_ID IS NULL
ORDER BY ANIMAL_ID;
이 SQL 쿼리는 두 개의 테이블인 ANIMAL_OUTS와 ANIMAL_INS를 사용하여 특정 조건을 만족하는 동물의 ID와 이름을 선택하는 작업을 수행한다.
LEFT JOIN ANIMAL_INS AS I ON O.ANIMAL_ID = I.ANIMAL_ID
ANIMAL_INS 테이블을 I라는 별칭으로 사용하여 ANIMAL_OUTS 테이블과 왼쪽 조인(LEFT JOIN)한다.
이 조인은 ANIMAL_OUTS의 ANIMAL_ID와 ANIMAL_INS의 ANIMAL_ID가 일치하는 경우에만 연결된다.
왼쪽 조인을 사용하기 때문에 ANIMAL_OUTS의 모든 행이 결과에 포함되며, ANIMAL_INS에 일치하는 행이 없으면 NULL 값이 반환.
WHERE I.ANIMAL_ID IS NULL
이 조건은 ANIMAL_INS 테이블에 해당하는 동물이 없음을 의미.
즉, ANIMAL_OUTS에 있는 동물 중 ANIMAL_INS에 없는 동물만 선택된다.
ORDER BY ANIMAL_ID
결과를 ANIMAL_ID를 기준으로 오름차순으로 정렬
결과적으로 이 쿼리는 ANIMAL_OUTS 테이블에 있는 동물 중 ANIMAL_INS 테이블에 없는 동물의 ID와 이름을 반환하며, 결과는 ANIMAL_ID를 기준으로 정렬된다.
'프로그래머스 > SQL' 카테고리의 다른 글
[프로그래머스] SUM, MAX, MIN LV.3 - 물고기 종류 별 대어 찾기 (0) | 2025.03.11 |
---|
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!