나는 훑어 보았지만 많은 다른 예제를 발견했지만 그 중 아무 것도 작동하지 않는 것으로 나타났습니다. 내가 가진 가장 가까운 것은 () 이상 이었지만 구문 오류로 인해 실패했습니다.전체 합계의 하위 합계 비율을 계산합니다.
다음 쿼리를 고려하십시오.
select Id,
count(*) as Count,
sum(Amount) as Sum
from MyTable
group by Id
결과 발생 횟수와 달했다 값 이드의 목록이다. 이것은 잘 작동합니다. 그러나 각 총계가 얼마나 많은 부분이 총계에 있는지도 보여주고 싶습니다. 나는 다음을 시도했다.
select Id,
count(*) as Count,
sum(Amount) as Sum,
sum(Amount)/sum(Amount) over() as Ratio
from MyTable
group by Id
그것은 실패하고 I합니다 ( 이상 꼬추가 더 안정적 지식보다 생각이었다 대부분 때문에) 그것을 해결하는 방법을 모르겠어요.
좋은 제안 : 당신이
OVER
절을 사용하려면, 내가 한 번 더 하위 쿼리가 당신을 건의 할 것입니다. 그러나, 나의 특별한 경우에, 서브 - 쿼리는 거대 할 것이다 (조인, wheres, sub-sub-select 등). 나는 게으른 사람의 해결책을 원했습니다. hehe. 그걸로 끝날 수 있습니까? –