You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Access查询IIF语句未正确显示结果求助

Access查询IIf函数显示异常的解决方法

你的问题核心是Access里的空字段默认是Null,不是长度为0的空字符串。你写的Len([tbl_Associate].[NICKNAME])=0对Null值不生效——因为Len(Null)返回的是Null,Null和0比较的结果还是Null,IIf会把这个结果判定为False,所以不管Nickname是Null还是空字符串,都会返回Nickname字段的值,而Null值显示出来就是空。

给你三种可行的解决写法:

  1. 直接用IsNull判断是否为Null:
FirstName: IIf(IsNull([tbl_Associate].[NICKNAME]), [tbl_Associate].[FIRST_NAME], [tbl_Associate].[NICKNAME])
  1. 用Nz把Null转成空字符串再判断长度:
FirstName: IIf(Len(Nz([tbl_Associate].[NICKNAME],""))=0, [tbl_Associate].[FIRST_NAME], [tbl_Associate].[NICKNAME])
  1. 最简化的写法,直接用Nz函数一步到位(Nz的作用就是当第一个参数为Null时返回第二个参数):
FirstName: Nz([tbl_Associate].[NICKNAME], [tbl_Associate].[FIRST_NAME])

内容的提问来源于stack exchange,提问作者user16800302

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 17:55:54