我有一些逻辑问题。
我有一个包含多个列(Name, Address etc
)的表和三个名为recNewsLetter, recAGM and recPhoneCall
的表,每个Yes/No
填充checkbox
。
我有另一个带有三个复选框Receive Newsletter, Receive AGM Info & To Phone
的表单。我正在寻找一个查询,我可以在其中选择表单中的一个复选框,它将显示该复选框为真的所有记录,而不管其他的。
例如,我想查看recNewsletter为true的所有记录,无论其他记录是否为真。如果recAGM
为真,则相同;我希望查看所有这些记录,无论recNewsLetter
或recPhonecall
的状态如何。
我的查询仅显示存在确切组合的记录。例如,如果recNewsletter为true(即表格上的复选框已勾选),它将仅显示那些记录为真,其他记录为假的记录。如果recNewsletter
和{ recAGM
为真,那么它只显示两个都是真的记录,而另一个(recPhoneCall
)是假的。
正如您可能已经猜到的那样,我的SQL基本上是一个' WHEN recNewsLetter和recAGM AND recPhoneCall'。例如,我会在显示所有新闻稿的记录后,无论AGM或电话呼叫的价值如何。
这是代码:
SELECT tblOrganisations.ID, tblOrganisations.OrgName
FROM tblOrganisations
WHERE (((tblOrganisations.recNewsLetter) =
[Forms]![frmPrintOrgLabels].[ReceiveNewsletter])) And
(((tblOrganisations.recAGM) = [Forms]![frmPrintOrgLabels].[ReceiveAGMInfo])) And
(((tblOrganisations.recPhoneCall)=[Forms]![frmPrintOrgLabels].[ToPhone]));
任何帮助都非常感谢!
[R
答案 0 :(得分:0)
据我所知,你需要像
这样的东西WHERE (
(tblOrganisations.recNewsLetter and [Forms]![frmPrintOrgLabels].[ReceiveNewsletter])
OR
(tblOrganisations.recAGM and [Forms]![frmPrintOrgLabels].[ReceiveAGMInfo])
OR
(tblOrganisations.recPhoneCall and [Forms]![frmPrintOrgLabels].[ToPhone])
)