我在报告中有两列qty_req
和qty_issued
。我需要找到qty_issued
列中值的平均值。问题是,qty_req
的相应值有时为0.我需要将qty_issued
列的平均值仅用于qty_req
不的行0.我该怎么做?
从我的其他问题中分离出来:MS Access: How can I average a list of quantities on a report where the quantities are not zero?
答案 0 :(得分:2)
如果要在报表上的文本框的控件来源中执行此操作,则可以利用Avg()
忽略空值的事实。
所以,当qty_req
<>时0,在平均值中包含qty_issued
。否则使用Null而不是qty_issued
值。
=Avg(IIf(qty_req <> 0, qty_issued, Null))
如果您想在查询中执行此操作...
SELECT Avg(IIf(qty_req <> 0, qty_issued, Null)) FROM YourTable;
答案 1 :(得分:0)
您可以在查询中设置条件,而不是查看0的qty_req:
SELECT Avg(MyTable.qty_issued) AS Avg_Issued
FROM MyTable
GROUP BY MyTable.qty_req
HAVING MyTable.qty_req <> 0;