문제
다음 [판매] 테이블에서 SQL문을 실행했을 때, 상품명이 'C'인 행의 ratio 값을 쓰시오. (소수점 둘째 자리까지)
| 상품명 | 지역 | 수량 |
|---|---|---|
| A | 서울 | 50 |
| B | 서울 | 80 |
| C | 서울 | 30 |
| D | 부산 | 60 |
| E | 부산 | 40 |
SQLSELECT 상품명, RATIO_TO_REPORT(수량) OVER (PARTITION BY 지역) AS ratio FROM 판매;
정답
0.19
0.190.1875
해설
RATIO_TO_REPORT() 윈도우 함수는 지정된 파티션 내에서 각 행의 값이 해당 파티션 총합에서 차지하는 비율을 계산합니다. 서울 지역의 총 수량은 50+80+30=160이고, 상품명 'C'의 수량은 30입니다. 따라서 C의 ratio는 30/160 = 0.1875입니다. 소수점 둘째 자리까지 표현하면 0.19가 됩니다.