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;