我有一个表访问(简化)字段的性别,名字,姓氏和电话号码。在空白字段的Access中的多字段搜索
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] & "*"
,其中搜索是我的表单的名称,和标准的标准是个人的名字我的表单上的条目。
现在,如果我搜索性别F和姓氏史密斯,并将名字和姓氏字段留空,我希望能够查看“Alice Smith”和“Smithe”的记录。但是,我只拿到了“爱丽丝史密斯”的纪录。此外,如果我搜索性别F和电话号码111,我会得到Alice,Smithe和Eve的结果。同样,如果我只是单独搜索电话号码,我将获得全部五条记录。
我假设我在这里做错了什么,但我不知道它是什么。根据or的条件逻辑,结果应该是Null或111(对其他字段也是类似的),所以我猜它的行为和预期的一样。然而,我尝试过xor,并且我得到了相同的结果(即使它以我认为的方式工作,它看起来很糟糕,因为空白条目将被解释为null而不是“搜索每个条目”。我试过使用iif,它应该是正确的方法来做到这一点,但它放置在条件字段时似乎不起作用。我在这里丢失了什么?
不喜欢*“&[Forms]![Search]![Criteria]&”*“'cover'”“''? 无论如何,在用'“”替换'Null'后,我仍然有同样的问题。 – tempguest
Scratch that: 例如,如果我在姓氏字段中搜索“Smith”,我现在将拥有Alice和Charlie的记录,但是我不会有Smith的记录,这是我的问题之前有过。 – tempguest