Reporting services ssrs 2005矩阵将计数值除以小计

Reporting services ssrs 2005矩阵将计数值除以小计,reporting-services,reportingservices-2005,Reporting Services,Reportingservices 2005,我有这张桌子 SELECT ProductName, Grade, COUNT(Grade) AS count FROM Inspection WHERE (Branch = @branchno) AND (Date BETWEEN @DateFrom AND DATEADD(day, 1, @DateTo)) AND (Grade <> '') GROUP BY ProductName, Grade ORDER BY ProductName 但是我一直试图

我有这张桌子

SELECT ProductName, Grade, COUNT(Grade) AS count
FROM   Inspection
WHERE (Branch = @branchno) AND (Date BETWEEN @DateFrom AND DATEADD(day, 1, @DateTo))
          AND (Grade <> '')
GROUP BY ProductName, Grade
ORDER BY ProductName
但是我一直试图让字段的计数值除以总数值,但遇到了麻烦 因为我需要的是这个桌子

       Grade 1 | Grade 2 | Grade 3 |  bad
======|========|=========|=========|=======
orange| 17.65% |  11.76% |  58.82% | 11.76%
------ -------- --------- ---------|--------    
banana| 13.33% |  13.33% |  53.33% | 20.00%  
我们可以通过以下步骤得到

       Grade 1 | Grade 2 | Grade 3 |  bad  | Total
======|========|=========|=========|=======|====== 
orange|  3/17  |  2/17   |  10/17  |  2/17 | 17
------ -------- --------- --------- ------- ------
banana|  2/15  |  2/15   |  8/15   |  3/15 | 15

感谢您的帮助

您可以对特定分组或数据区域中的数据求和。查看总和在订单分组上的位置:

=Sum(Fields!LineTotal.Value, "Order")
您还需要防止被零错误除法。

多亏了Maciej,我们才得以实现

SELECT ProductName, Grade, COUNT(Grade) AS CountOfGrades, (SELECT COUNT(Grade) FROM Inspection WHERE (Branch = @branchno) AND (Date BETWEEN @DateFrom AND DATEADD(day, 1, @DateTo))
          AND (Grade<>'') AND (productname=i.productname) AS TotalOfGrades
FROM   Inspection as i.inspection
WHERE (Branch = @branchno) AND (Date BETWEEN @DateFrom AND DATEADD(day, 1, @DateTo))
          AND (Grade <>'')
GROUP BY ProductName, Grade
ORDER BY ProductName

你好,谢谢你的回复,我试过了,也读过了链接,但似乎无法达到我的要求
SELECT ProductName, Grade, COUNT(Grade) AS CountOfGrades, (SELECT COUNT(Grade) FROM Inspection WHERE (Branch = @branchno) AND (Date BETWEEN @DateFrom AND DATEADD(day, 1, @DateTo))
          AND (Grade<>'') AND (productname=i.productname) AS TotalOfGrades
FROM   Inspection as i.inspection
WHERE (Branch = @branchno) AND (Date BETWEEN @DateFrom AND DATEADD(day, 1, @DateTo))
          AND (Grade <>'')
GROUP BY ProductName, Grade
ORDER BY ProductName