MS Access:如何在数量不为零的报表上平均数量列表?

时间:2016-08-03 13:01:56

标签: ms-access report average ms-access-2013

我有一份报告。此报告返回大量行。其中一列是qty_req(需要数量)。我需要AVG()此列,并将平均值放在报告的底部。问题是有时某些行在此列中为零。我希望平均值排除任何存在零的行。我怎么能做到这一点?

我尝试了什么:我尝试在查询中使用DAvg,但这使查询时间变得非常大。

2 个答案:

答案 0 :(得分:2)

Avg()忽略Null值。因此,您可以使用IIf()表达式将Null替换为零值,然后将Avg()基于IIf()表达式。

以下是报告页脚中文本框的控件来源:

=Avg(IIf([gainOrLoss]=0, Null, [gainOrLoss]))

gainOrLoss是报告的记录来源中的字段。并且文本框显示所有那些既不为零也不为空的值的平均值。

答案 1 :(得分:-1)

那么你就不能使用计算出来的SUM()AVG()字段,就这么简单。
这些函数始终使用报表中的所有行。

您需要DSum()DAvg()单独计算。

如果这太慢,你需要解决这个问题。