개발로그필름

[SQL] 업그레이드 된 아이템 구하기 본문

coding test/프로그래머스

[SQL] 업그레이드 된 아이템 구하기

yuullog 2025. 6. 6. 22:18
728x90
반응형
SMALL
반응형

 

 

 

 

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

 

정답 쿼리
SELECT T.ITEM_ID, I.ITEM_NAME, I.RARITY
FROM ITEM_INFO I
JOIN ITEM_TREE T
    ON I.ITEM_ID = T.ITEM_ID
WHERE T.PARENT_ITEM_ID IN (
    SELECT ITEM_ID
        FROM ITEM_INFO
    WHERE RARITY = 'RARE'
)
ORDER BY ITEM_ID DESC;

 

 

오답 노트

서브 쿼리 + 문제 이해도 콜라보,,

일단 서브쿼리부터 살펴보면

SELECT ITEM_ID
FROM ITEM_INFO
WHERE RARITY = 'RARE'

희귀도가 RARE인 컬럼의 ITEM_ID를 먼저 선택 한다

예시 테이블로 예를 들면 ITEM_ID가 0, 1, 3, 4인 테이블인 것이다

그 고른 테이블을 가지고 ITEM_INFO 랑 ITEM_TREE 를 JOIN 한 테이블에서 PARENT_ITEM_ID가 동일한 행을 select

 

 

 

 

반응형
LIST
Comments