我的ms访问查询中有一个Iif语句,没有产生结果。我要求它查看一个字段的值,如果为空则显示另一个字段的值,如果不为空,则显示其值
购买:IIf([NewPurchasePrice] =“”,[PurchasePrice],[NewPurchasePrice])
答案 0 :(得分:0)
可能NewPurchasePrice
不是一个空字符串,而是Null
。您可以使用IsNull(NewPurchasePrice)
进行测试。如果要确保同时测试Null
和空字符串,可以编写Nz(NewPurchasePrice)=""
。 Nz()
将Null
转换为与类型的默认值兼容的特殊值Empty
。对于Integer
,例如Nz(Null) = 0
,对于字符串Nz(Null) = ""
,等等。
对于类型可能为Decimal
或Double
的价格,只需输入
Purchase: IIf(IsNull([NewPurchasePrice]),[PurchasePrice],[NewPurchasePrice])