就像 Nz 不处理空值
Like Nz not handling a null value
我有一个查询,我使用表单通过一些过滤选项来控制它。其中一个过滤器是医疗代码搜索。有时这个字段有一个值,有时它是空的。我也希望能够搜索部分数据字符串。我正在尝试的代码是:
Expr9: ([tblQA].[Charges Entered]) Like Nz("*" & [Forms]![MainMenu]![btnManagersMenu].[Form]![txtChargeCode] & "*","*")
我希望发生的情况是,如果我在 txtChargeCode 中输入某个值,它将 return 包含该字符串的任何记录。那部分有效。当 txtChargeCode 没有值时,问题就出现了。如果 Charges Entered 的记录为空,则这些记录将从结果中过滤掉。我仍然看到有价值的记录。如果 txtChargeCode 留空,我希望记录中输入的费用的任何空值出现在结果中。谁能帮我解决这里发生的事情?我的 Like 和 Nz 页面已经看了很多遍了。
您当前的条件永远不会为空,因为它始终包含字符串“**”。
相反,我们将使用 Nz 将 [Charges Entered] 中的空值转换为空字符串 ("")。现在 [Charges Entered] 中的所有项目都被视为条件中的字符串,我们可以将它们与 LIKE 运算符进行比较。
当 txtChargeCode 为空时,下面的表达式将 return 所有记录(包括空值)。
Nz([tblQA].[Charges Entered], "") Like "*" & [Forms]![MainMenu]![btnManagersMenu].[Form]![txtChargeCode] & "*"
您可以对 [Charges Entered] 进行排序,以便在结果顶部显示空值,以便在 txtChargeCode 为空时更容易发现空值。
我有一个查询,我使用表单通过一些过滤选项来控制它。其中一个过滤器是医疗代码搜索。有时这个字段有一个值,有时它是空的。我也希望能够搜索部分数据字符串。我正在尝试的代码是:
Expr9: ([tblQA].[Charges Entered]) Like Nz("*" & [Forms]![MainMenu]![btnManagersMenu].[Form]![txtChargeCode] & "*","*")
我希望发生的情况是,如果我在 txtChargeCode 中输入某个值,它将 return 包含该字符串的任何记录。那部分有效。当 txtChargeCode 没有值时,问题就出现了。如果 Charges Entered 的记录为空,则这些记录将从结果中过滤掉。我仍然看到有价值的记录。如果 txtChargeCode 留空,我希望记录中输入的费用的任何空值出现在结果中。谁能帮我解决这里发生的事情?我的 Like 和 Nz 页面已经看了很多遍了。
您当前的条件永远不会为空,因为它始终包含字符串“**”。
相反,我们将使用 Nz 将 [Charges Entered] 中的空值转换为空字符串 ("")。现在 [Charges Entered] 中的所有项目都被视为条件中的字符串,我们可以将它们与 LIKE 运算符进行比较。
当 txtChargeCode 为空时,下面的表达式将 return 所有记录(包括空值)。
Nz([tblQA].[Charges Entered], "") Like "*" & [Forms]![MainMenu]![btnManagersMenu].[Form]![txtChargeCode] & "*"
您可以对 [Charges Entered] 进行排序,以便在结果顶部显示空值,以便在 txtChargeCode 为空时更容易发现空值。