【问题标题】:Ms Access Query not return null values with * wildcardMs Access Query 不返回带有 * 通配符的空值
【发布时间】:2021-02-27 22:22:56
【问题描述】:

我一直在努力解决这个问题,所以希望有人可以帮助我!

我在 MS Access 中有一个类似这样的简单查询

Where [Param] like IIf(FormCondition,[SpecificParam],"*")

当 IIf 条件为真时它工作正常,但当条件为假时它返回 [Param] 不为空的所有行,而我需要所有行,包括 [Param] 为空的那些行。有什么想法吗?

【问题讨论】:

    标签: ms-access


    【解决方案1】:

    最简单的解决方案是将整个条件包装在IIF

    Where IIf(FormCondition, [Param] like [SpecificParam], True)
    

    如果FormCondition 为假,这将始终返回True

    没有IIF 的替代表述是:

    Where ([Param] like [SpecificParam] OR NOT FormCondition)
    

    【讨论】:

    • 感谢您的回复!第一个建议不起作用(我在其他地方读到它与执行 VBA 和 SQL 的顺序有关)。第二个确实有效,但我试图避免它,因为查询生成器创建了一个新行,其中包含 FormCondition 的新列。由于我有很多这样的,它会使很多行增加一倍,但我想没有办法解决它。谢谢!
    猜你喜欢
    • 2019-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多