부제:
없어진 기록 찾기, 레벨 4
1. 문제 링크:https://school.programmers.co.kr/learn/courses/30/lessons/59042
2. 정답 코드:
=> not exists 문법 사용
SELECT
animal_id,
name
from animal_outs as ao
where not exists (
select 1
from animal_ins as ai
where ai.animal_id = ao.animal_id
)
order by animal_id
=> left join 사용
SELECT
ao.animal_id,
ao.name
from animal_outs as ao
left join animal_ins as ai
on ai.animal_id = ao.animal_id
where ai.animal_id is null
order by animal_id
3. 오류 상황:
SELECT
animal_id,
name
from animal_ins as ai
where not exists in (
select 1
from animal_outs as ao
where ai.animal_id = ao.animal_id
)
order by animal_id
=> not exists in 문법 존재 x
4. 시도 방법:
=> not exists 문법 사용
=> left join 사용
5. 최종 문제 해결 방법:
=> animal_outs를 기준으로 animal_ins를 조인한 뒤, ai.animal_id가 NULL인 경우를 필터링
=> not exist 사용해 서브쿼리 활용
'SQL 알고리즘 코드카타' 카테고리의 다른 글
| SQL 알고리즘 코드카타 18일차(2) 26.01.16(금) (0) | 2026.01.16 |
|---|---|
| SQL 알고리즘 코드카타 18일차(1) 26.01.16(금) (0) | 2026.01.16 |
| SQL 알고리즘 코드카타 17일차(2) 26.01.15(목) (1) | 2026.01.15 |
| SQL 알고리즘 코드카타 17일차(1) 26.01.15(목) (0) | 2026.01.15 |
| SQL 알고리즘 코드카타 16일차(3) 26.01.14(수) (1) | 2026.01.14 |