[SQL] 프로그래머스 : 업그레이드 된 아이템 구하기

조예빈·2024년 7월 28일
0

Coding Test

목록 보기
77/138

https://school.programmers.co.kr/learn/courses/30/lessons/273711

이 문제는 아이템의 희귀도가 'RARE'인 아이템들의 모든 다음 업그레이드 아이템의 ID, 이름, 희귀도를 구하는 문제이다. 다음 업그레이드 아이템은 ITEM_TREE 테이블에서 볼 수 있다. 우선 ITEM_INFO 테이블에서 희귀도가 RARE인 ITEM_ID를 구해 준 후 이것을 ITEM_TREE 테이블에서 구하면 되는 것이다.

ITEM_A의 경우는 ITEM_ID가 0이고, PARENT_ITEM_ID도 0이 되므로 ITEM_ID가 1,2인 아이템으로 업그레이드가 가능 한 것이다.

SELECT A.ITEM_ID, ITEM_NAME, RARITY
FROM ITEM_INFO A
JOIN ITEM_TREE B
ON A.ITEM_ID = B.ITEM_ID
WHERE PARENT_ITEM_ID IN (SELECT ITEM_ID FROM ITEM_INFO WHERE RARITY='RARE')
ORDER BY A.ITEM_ID DESC;

profile
컴퓨터가 이해하는 코드는 바보도 작성할 수 있다. 사람이 이해하도록 작성하는 프로그래머가 진정한 실력자다. -마틴 파울러

0개의 댓글