- 문제설명
- 문제
- 풀이
ITEM_A ➡ ITEM_B ➡ ITEM_D
↘ ↘
ITEM_C ITEM_E
✅ ITEM_TREE테이블을 보면 더 이상 업그레이드 할 수 없는 아이템은 ITEM_C, ITEM_D, ITEM_E
1. ITEM_INFO 테이블기준으로 ITEM_TREE 테이블과 LEFT JOIN
SELECT *
FROM ITEM_INFO I
LEFT JOIN ITEM_TREE T
ON I.ITEM_ID = T.PARENT_ITEM_ID
👉 해당 아이템이 다른 아이템의 부모인지 체크!!
2. 부모로 등장한 적이 없는 아이템만 필터링 ( = 다른 아이템으로 업그레이드되지 않는 아이템)
SELECT *
FROM ITEM_INFO I
LEFT JOIN ITEM_TREE T
ON I.ITEM_ID = T.PARENT_ITEM_ID
WHERE T.ITEM_ID IS NULL
👉 T.ITEM_ID = 업그레이드된 아이템이므로 NULL이면 더 이상 업그레이드 할 수 없는 최종 아이템임
3. 아이템 ID를 기준으로 내림차순 정렬
SELECT I.ITEM_ID, I.ITEM_NAME, I.RARITY
FROM ITEM_INFO I
LEFT JOIN ITEM_TREE T
ON I.ITEM_ID = T.PARENT_ITEM_ID
WHERE T.ITEM_ID IS NULL
ORDER BY I.ITEM_ID DESC;
- 실행결과
'빅데이터 공부 > SQL' 카테고리의 다른 글
[프로그래머스 / MySQL / Lv.3 물고기 종류 별 대어 찾기] (0) | 2025.03.19 |
---|---|
[프로그래머스 / MySQL / Lv.4 그룹별 조건에 맞는 식당 목록 출력하기] (0) | 2025.03.18 |
[프로그래머스 / MySQL / Lv.3 대장균들의 자식의 수 구하기] (0) | 2025.03.14 |
[프로그래머스 / MySQL / Lv.4 연간 평가점수에 해당하는 평가 등급 및 성과금 조회하기] (0) | 2025.03.13 |
[프로그래머스 / MySQL / Lv.3 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기] (0) | 2025.03.12 |