2014-03-26 2 views
1

지역별 수입 요약 (가장 높은 순위에서 가장 낮은 순위 순서로 각 지역의 합계 % 계산). 기본적으로 총 수익 대비 각 지역의 수익을 표시하는 쿼리를 작성하려고합니다.SQL 지역별 매출 요약 (가장 높은 순위에서 가장 낮은 순위 순으로 각 지역의 합계의 % 계산)

Microsoft Access에서 SQL을 사용하고 있습니다. ID, 지역, 수익

3 개 지역이 있습니다 :

내 테이블에는 다음과 같은 열이 서부, 중부, 동부

Heres는 내가 지금까지 무엇을 :

SELECT Region, Sum(Revenue) AS TotalRevenue 
FROM Sales 
GROUP BY Region 
ORDER BY Sum(Revenue) DESC 

어떤 도움을 크게 환영받을 것입니다

답변

0

이것은 내가 제공 할 수있는 한 가지 방법으로, 실제로는 과장된 영역이 3 개 밖에 없지만 작동해야합니다.

SELECT Region, Sum(Revenue) AS TotalRevenue, Sum(Revenue)/x.allRegionRevenue 
FROM Sales s, 
inner join (select sum(revenue) allRegionRevenue)) x 
    on s.revenue*0 = x.allRegionRevenue*0 
GROUP BY Region 
ORDER BY Sum(Revenue) DESC 

* 편집 : * 액세스 실제 "크로스 조인"구문을 지원하지 않기 때문에이 약간 수정,하지만 난 생각 우리가 할 수있는 "가짜"그것은 내부는 항상 진실 조건에 가입과 함께 - klugey 트릭은 여기에서 각각의 참조를 제로로 곱하여 모든 레코드를 강제로 일치시키는 것입니다. 희망이 도움이됩니다.

0

이 시도 :

SELECT Region, SUM(Revenue) AS TotalRevenue, 
     (SUM(Revenue)/(SELECT Sum(Revenue) FROM Sales)) AS percentage 
FROM Sales 
GROUP BY Region 
ORDER BY Sum(Revenue) DESC 
관련 문제