【发布时间】:2016-11-16 22:54:55
【问题描述】:
我有一个访问表(简化),其中包含性别、名字、姓氏和电话号码的字段。
Sex First Last Phone
F Alice Smith
M Bob 111-111-1111
F Smithe 111-111-1112
M Charlie Smith
F Eve Drop 111-111-1113
我创建了一个表单以及一个查询来搜索记录,使用的条件是
Is Null Or Like "*" & [Forms]![Search]![Criteria] & "*"
其中 Search 是我的表单名称,Criteria 是我表单上各个条目的名称。
现在,如果我搜索 Sex F 和姓氏 Smith,并将名字和姓氏字段留空,我希望能够看到“Alice Smith”和“Smithe”的记录。但相反,我只得到“爱丽丝史密斯”的记录。此外,如果我搜索 Sex F 和电话号码 111,我会得到 Alice、Smithe 和 Eve 的结果。同样,如果我只搜索电话号码,我会得到所有 5 条记录。
我假设我在这里做错了什么,但我不知道是什么。基于 or 的条件逻辑,结果应该是 Null 或 111(其他字段类似),所以我猜它的行为符合预期。但是,我尝试了 xor,并且得到了相同的结果(即使它确实按照我认为的方式工作,但这似乎很糟糕,因为空白条目将被解释为 null 而不是“搜索每个条目”。我试过使用 iif,这应该是正确的方法,但是放在条件字段中时似乎不起作用。我在这里遗漏了什么吗?
【问题讨论】:
标签: ms-access