0

我已经四处寻找,但没有设法找到答案。是否可以在访问 SQL 查询中组合 Round、Sum 和 isnull?我一直在尝试编写以下查询:

ROUND(sum(iif(isnull(amount,0,amount))),2) as Amount

但是,我对上述或其他变体没有成功。我的 SQL 有缺陷吗?

如果我的 SQL 有缺陷,如果有人能够为我提供正确的语法,我将不胜感激。

4

1 回答 1

2

在 AccessISNULL()中,接受一个参数并返回一个布尔值,指示传递的表达式是否为空。在您的查询中,您有 3 个参数传递给ISNULL

isnull(amount,0,amount)

要将其拆开,首先您需要检查金额是否为空:

IIF(ISNULL(Amount), 0, Amount)

然后添加SUM

SUM(IIF(ISNULL(Amount), 0, Amount))

最后添加ROUND

ROUND(SUM(IIF(ISNULL(Amount), 0, Amount)), 2) AS Amount
于 2013-10-08T16:25:30.117 回答