访问查询中的SUM

时间:2015-05-20 22:06:01

标签: ms-access ms-access-2007 ms-access-2010

我有一个表(T_agents)的代理商,每个代理商都在一个名为 NCH 的字段中进行了多次调用我想创建另一个字段调用 NCHpercent 即该代理程序调用的百分比。所以公式是 NCH / Total NCH 。 所以在查询构建器中我有以下和公式,但它有效:(

NCHpercent: [NCH.T_agents] / ( SUM(SELECT [NCH.T_agents] FROM [T_agents]) )

我做错了什么?

2 个答案:

答案 0 :(得分:0)

如果我们能够看到表格结构会影响一切,那会更容易。但是我希望我能正确地遵循这一点,但我想你的表(T_agents)就像:

+-------+-------------+------+
| ID    | Agents      | NCH  |
+-------+-------------+------+
| 1     | agent_1     | 1    | 
| 1     | agent_1     | 1    | 
| 1     | agent_2     | 2    | 
| 1     | agent_3     | 1    | 
+-------+-------------+------+

现在假设这是正确的(NCH不是一个唯一的ID,而是一个调用的总数,那么我们可以使用这样的查询来计算百分比 - 注意这不存储在表中,这只是为了显示百分比查询中的值 - 为了它,我还添加了总和的总和:

SELECT SUM([T_Agents].NCH) AS total_SUM, [T_agents].Agents, ((SUM(T_agents.NCH))/(select SUM(t_agents.NCH )from T_agents)*100) AS NCHPercent
FROM T_agents
GROUP BY [t_agents].Agents;

在我的测试中,结果将是:

2, agent_1, 40
2, agent_2, 40
1, agent_3, 20

但是,如果我错了,NCH专栏实际上是

答案 1 :(得分:-1)

确定。我刚刚找到答案,因此试错了一些。答案是这段代码:

NCHperc: [AHT_Tenure].[Calls Handled]/(SELECT Sum(AHT_Tenure.[Calls Handled]) AS [SumaDeCalls Handled]
FROM AHT_Tenure)

顺便谢谢你们。事实上,代理人为这个查询命名了一个重要因素,因为我想要的只是每一行的百分比。