问题描述
我正在尝试编写一个查询,其中输出应该是要发送给客户的未付发票(尚未支付或未全额支付)。目前我的查询(在 sql 视图中)如下所示:
SELECT Main.Reference,Main.Date,Main.Company,Main.[Claim No],Main.Invoice,Main.[Amount Paid]
FROM Main
WHERE (((Main.[Amount Paid])<[Invoice])) OR IsNull()
ORDER BY Main.Company;
IsNull 函数调用方括号中的表达式,我不知道应该在那里放什么。基本上,输出(报告)应显示已支付但未全额支付(支付的金额少于实际发票金额)或根本未支付的发票。目前它给了我一个报告,但它显示已付款但在报告上显示未付款的发票。
解决方法
您可以使用:
WHERE [Amount Paid] < [Invoice] OR IsNull([Amount Paid])
或(纯 SQL):
WHERE [Amount Paid] < [Invoice] OR [Amount Paid] Is Null