Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我已经四处寻找,但没有设法找到答案。是否可以在访问 SQL 查询中组合 Round、Sum 和 isnull?我一直在尝试编写以下查询:
ROUND(sum(iif(isnull(amount,0,amount))),2) as Amount
但是,我对上述或其他变体没有成功。我的 SQL 有缺陷吗?
如果我的 SQL 有缺陷,如果有人能够为我提供正确的语法,我将不胜感激。
在 AccessISNULL()中,接受一个参数并返回一个布尔值,指示传递的表达式是否为空。在您的查询中,您有 3 个参数传递给ISNULL:
ISNULL()
ISNULL
isnull(amount,0,amount)
要将其拆开,首先您需要检查金额是否为空:
IIF(ISNULL(Amount), 0, Amount)
然后添加SUM
SUM
SUM(IIF(ISNULL(Amount), 0, Amount))
最后添加ROUND
ROUND
ROUND(SUM(IIF(ISNULL(Amount), 0, Amount)), 2) AS Amount