Database/Oracle
[오라클] 재밌는 퀴즈 1
데브포유
2009. 4. 16. 17:23
반응형
Q. 제품 거래 테이블에서 특정기간 동안 일별 거래액이 가장큰 상품 1개를 상품명과 출력하기? 상품명은 스칼라쿼리를 쓰거나 join하면 되므로 일단 상품코드라도 나오게 할것.
거래T
거래일자 | 상품코드 | 상품금액 |
20090401 | a | 100 |
20090401 | b | 200 |
20090402 | a | 150 |
>> 출력예제
20090401 b 200
20090402 a 150
<< 많은 답중의 하나 >>
select *
from
(
select
a.*, row_number() over(partition by 거래일자 order by 가격 desc) rn
from
(
select 거래일자, 상품코드, sum(상품가격) '가격'
from 거래T
where 거래일자 between '20090401' and '20090402'
group by 거래일자, 상품코드
order by 가격 desc
)a
)
where rn = 1
## 위 방법말고 더 좋은 방법을 알고 계시면 리플 달아 주세요.
반응형