SQL/HackerRank
[해커랭크 medium] Ollivander's Inventory(MySQL)
강떡볶
2022. 3. 26. 16:33
https://www.hackerrank.com/challenges/harry-potter-and-wands/problem?isFullScreen=true
Ollivander's Inventory | HackerRank
Help pick out Ron's new wand.
www.hackerrank.com
해리포터 어쩌구.. 하는 문제
나 해리포터 안봐서 이름이 뭐라 뭐라 나오니까 괜히 더 헷갈렸다 ㅋㅋㅋㅋ
select distinct w1.id, p1.age, w1.coins_needed, w1.power
from wands w1
join wands_property p1
on w1.code = p1.code
where w1.coins_needed in (select min(w.coins_needed) min_coins
from wands w
join wands_property p
on w.code = p.code
where p.is_evil = 0
and w1.power = w.power and p1.age = p.age
group by p.age, w.power)
order by w1.power desc, p1.age desc
일단 코드는 이렇다!!
이 문제에서 배운 점은 where절 서브 쿼리 안에 w1.power = w.power and p1.age = p.age 부분이다!
서브 쿼리 내의 테이블의 컬럼과 서브 쿼리 밖에 있는 테이블의 컬럼이 서로 같다는 조건을 서브 쿼리 안에다 쓸 수 있다는 게 신박하다.
잘 기억해서 나중에 응용해야겠다 ㅎㅎ