我已经编写了一个查询来获取三个字段的总和,除了大多数字段总和为零。我只需要返回大于零的总和。以下是查询
SELECT [Product],
SUM([Pounds]) as SumPounds,
SUM([Dollars]) as SumDollars,
SUM([EBITDA]) as SumEBITDA
FROM MyTable
WHERE ([Year] = '2017' AND [Date] <= #8/20/2017#)
SORT BY [Product];
有没有办法只在Access中返回大于零的总和?
答案 0 :(得分:2)
SELECT [Product],
SUM([Pounds]) as SumPounds,
SUM([Dollars]) as SumDollars,
SUM([EBITDA]) as SumEBITDA
FROM MyTable
WHERE ([Year] = '2017' AND [Date] <= #8/20/2017#)
GROUP BY [Product]
HAVING SUM([Pounds]) + SUM([Dollars]) + SUM([EBITDA]) > 0
答案 1 :(得分:1)
您可以使用HAVING过滤聚合函数的结果
SELECT [Product],
SUM([Pounds]) as SumPounds,
SUM([Dollars]) as SumDollars,
SUM([EBITDA]) as SumEBITDA
FROM MyTable
WHERE ([Year] = '2017' AND [Date] <= #8/20/2017#)
HAVING UM([Pounds]) >0 AND SUM([Dollars]) > 0 AND SUM([EBITDA]) >0
SORT BY [Product];
如果您需要所有3个值,您可以使用AND,如上面的答案,如果您只需要一个,您可以使用OR