Ratio_to_report 질문 드립니다^^ 0 2 685

by 치비 [SQL Query] [2020.02.18 16:48:27]


반갑습니다. SQL 공부하는중 궁금한점이 있어서 말씀드립니다.

품명별 전체 매출 점유율을 구한다면

SELECT 상품명, RATIO_TO_REPORT(SUM(판매량) OVER (PARTITION BY 상품명))  FROM 상품
GROUP BY ROLLUP(상품명)

이렇게 짜봤는데
상품명 점유율
A상품 12%
B상품 8%
C상품 20%
D상품 34%
E상품 26%
F상품 5%
G상품 5%
전체비중 100%
   

 

이렇게 구할 수 있는데 궁금한점은 전체합과 G상품의 정보만 가져오고 싶으면

 WHERE 상품명 = 'G상품' 또는 HAVING 상품명 = 'G상품' 절을 쓰면 조건이 걸리기 때문에 

G상품 100%
전체소계 100%

이렇게 나오는데 

총합을 고정시키고 조건식을 걸어도 

 

G상품 5%
전체소계 100%

 

나오게 하는 방법이 없을까요?? 

 

by 마농 [2020.02.19 07:57:29]

1. 올려주신 쿼리의 괄호가 안맞는데요?
 - 오류 : RATIO_TO_REPORT(SUM(판매량) OVER (PARTITION BY 상품명))
 - 수정 : RATIO_TO_REPORT(SUM(판매량)) OVER (PARTITION BY 상품명)
2. 조건을 바로 걸지 마시고
 - 인라인뷰 밖에서 조건 주세요.


by 치비 [2020.02.19 09:55:11]

저가 쿼리확인을 못했었네요ㅠ 댓글감사합니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입