IIF(IsNull(now(),now()-1,now())
当我把这个函数放入时,isnull函数不起作用。空白数据出现了。
答案 0 :(得分:2)
首先,缺少一个结束括号:
IIF(ISNULL(现在()的)下,现在() - 1,现在())
(这里没有使用代码标签,所以我可以将括号加粗)
添加括号后,它将始终返回当前日期(不减去1),因为Now()
永远不能为空。
答案 1 :(得分:2)
Access中的IsNull()与SQL Server中的IsNull()不同。在后者中,如果找到一个字段,它是一种返回不同值的方法Null,如IsNull([Field1],[Field2])如果Field1为Null则返回Field2。
在Access中,IsNull()是一个布尔函数,它有一个参数,用于确定传递给它的表达式是否计算为Null。
对于SQL Server IsNull()的等价物,您可以在Access中使用Nz(),但它不能从Access外部(通过ODBC或OLEDB)使用。在这种情况下,您必须将其转换为使用Immediate If函数IIf(),并通过使用IsNull测试它们来返回值: