| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- 코딩
- python
- 조합
- coding test
- 코딩테스트
- level4
- mysql
- AARRR
- coding
- Queue
- programmers
- cte
- collections
- LeetCode
- 완전탐색
- tableau
- import re
- join
- Level2
- Growth hacking
- 코테
- Stack
- 프로그래머스
- itertools
- sql
- 파이썬
- time complexity
- lv4
- counter
- lambda
Archives
- Today
- Total
ror_coding
[Programmers] 업그레이드 된 아이템 구하기 - 273711 본문
728x90
WHERE 절 sub query 로 출력할 rows 를 정해주는 방법이다 !
매우 간단해 보이지만 막상 코드를 작성하면 잘 안 나오던 건데 문제로 풀 수 있어서 좋았다 ㅎㅎ !
Question
아이템의 희귀도가 'RARE'인 아이템들의 모든 다음 업그레이드 아이템의 아이템 ID(ITEM_ID), 아이템 명(ITEM_NAME), 아이템의 희귀도(RARITY)를 출력하는 SQL 문을 작성해 주세요. 이때 결과는 아이템 ID를 기준으로 내림차순 정렬주세요.
Point
- WHERE 절 sub query 사용.
- WHERE _ IN ( SELECT _ FROM _ WHERE _ = ' ' )
- JOIN ON
Code (After 25.06.)
SELECT C.ITEM_ID
, C.ITEM_NAME
, C.RARITY
FROM ITEM_INFO I
JOIN ITEM_TREE T ON T.PARENT_ITEM_ID = I.ITEM_ID
JOIN ITEM_INFO C ON T.ITEM_ID = C.ITEM_ID
WHERE I.RARITY = 'RARE'
ORDER BY 1 DESC
Code
SELECT T.ITEM_ID, ITEM_NAME, RARITY
FROM ITEM_INFO I
JOIN ITEM_TREE T
ON I.ITEM_ID = T.ITEM_ID
WHERE PARENT_ITEM_ID IN (SELECT ITEM_ID FROM ITEM_INFO WHERE RARITY = 'RARE')
ORDER BY ITEM_ID DESC

now me
On my github
728x90
'Coding Test > SQL' 카테고리의 다른 글
| [Programmers] 조건에 맞는 개발자 찾기 - 276034 (1) | 2024.10.01 |
|---|---|
| [Programmers] 연도별 대장균 크기의 편차 구하기 - 299310 (0) | 2024.09.30 |
| [Programmers] 노선별 평균 역 사이 거리 조회하기 - 284531 (2) | 2024.09.30 |
| [Programmers] 분기별 분화된 대장균의 개체 수 구하기 - 299308 (0) | 2024.09.29 |
| [Programmers] 자동차 평균 대여 기간 구하기 - 157342 (0) | 2024.09.29 |