0

我需要在 MS Access 数据库中运行查询,从表单中提供一些参数。想象下一个例子:

我有一个表格,其中包含:

  • CheckBox1 和 Text1
  • CheckBox2 和 Text2
  • 按钮(运行查询)

现在想象一个包含两个字段的查询:ID, NAME.

我只想在ID启用 CheckBox1 时按 Text1 过滤。如果不是,我希望查询不以ID任何方式过滤(好像“查询”输入为空)。

NAME同样,我只想在启用 CheckBox2 时按 Text2进行过滤。如果没有,我希望查询不以NAME任何方式过滤(就像ID以前一样)。

几天来,我尝试了很多事情,并且嗅探了大量互联网页面,但仍然没有提出解决方案。

4

1 回答 1

1

您可以使用如下 SQL 查询:

select * from YourTable t
where
    ([Forms]![YourForm]![CheckBox1] = False or t.ID   = [Forms]![YourForm]![Text1]) and
    ([Forms]![YourForm]![CheckBox2] = False or t.NAME = [Forms]![YourForm]![Text2])

(更改YourTable为表格YourForm名称和表格名称;t只是一个别名,因此您只需在代码中的一个位置更改表格名称)。

于 2019-12-22T17:31:35.597 回答