逐行访问行数

时间:2016-06-08 13:44:24

标签: ms-access ms-access-2010

对不起,如果这对每个人都是一个愚蠢的问题,但我会坚持看似非常简单的事情。

如果我像这样创建SQL:

Weights: [Volume]/2792

我得到了总数的逐行百分比。

enter image description here

然而,我无法对总数进行硬编码,所以我真的想设置我的查询:

Weights: [Volume]/sum([Volume])

然而,这给了我这个。

enter image description here

有人可以告诉我如何动态地对“权重”字段求和,这样我就可以获得每条记录的百分比吗?

这是SQL:

SELECT tblOffices.ServiceID, tblOffices.Branch, tblOffices.Volume, [Volume]/Sum([Volume]) AS Weights
FROM tblOffices
GROUP BY tblOffices.ServiceID, tblOffices.Branch, tblOffices.Volume;

谢谢!

1 个答案:

答案 0 :(得分:1)

您需要的是2个查询或带有子查询的查询。如果您不熟悉子查询,请执行以下两个查询:

QRY1

SELECT Sum([VOLUME]) AS [Total Volume] 
FROM yourTable

这将为您提供所有卷的总和。

然后构建另一个查询,该查询使用QRY1的结果作为计算值。

QRY2

SELECT Yourtable.[Volume] AS Vol, YourTable.[Volume]/QRY1.[Total Volume] AS Weight
FROM YourTable,TEST1;

以百分比形式显示100或将格式设置为百分比。