如何轻松过滤我的查询

时间:2013-02-18 09:36:09

标签: sql ms-access

我正在尝试通过表单上的文本框过滤查询。我在查询的标准中有这个:

Like "*" & [Forms]![Form_Name]![Textbox] & "*"

但是,如果文本框为空,则仅显示查询中的字段中包含文本的数据。它不显示所有数据,即没有数据的字段。这可能吗?

我发现这样做的唯一方法是使用过滤器进行2次查询,不使用1次,并运行代码,如果文本框为空,则交换查询。

2 个答案:

答案 0 :(得分:2)

只需在字段中附加零长度字符串进行比较,然后没有字段为空,因此它们将匹配*。

WHERE MyField & "" 
Like "*" & [Forms]![Form_Name]![Textbox] & "*"

答案 1 :(得分:1)

我目前没有可用的Access副本,但快速谷歌和一些修补告诉我这可能会满足您的需求:

Like "*" & [Forms]![Form_Name]![Textbox] & "*" 
Or (Len(Nz([Forms]![Form_Name]![Textbox],"")) = 0 And Len(Nz([Column],"")) = 0)

来源:

http://bytes.com/topic/access/answers/607087-validation-if-null-empty-string http://office.microsoft.com/en-001/access-help/table-of-operators-HA010235862.aspx http://www.techonthenet.com/access/functions/advanced/nz.php