我遇到Microsoft Access 2007中多值字段的问题。
我想在复选框列表中选择值,并根据这些值查询多值列包含所有这些值的项目。
SELECT i.ID, i.Responsibility.Value
FROM tb_Items i
WHERE <<<what should I put here?>>>;
我需要使用复选框列表中的值填充 where 子句,并检查表中的多值列(在这种情况下为tb_Items.Responsability)是否包含这些值。
我该怎么做?
编辑:
我有一个填充值的复选框列表,允许我检查它。
i.Responsibility是数据库表中的多值字段。当我使用选择i.Responsibility.Value从tb_Items i 查询此表时,数据列i.Responsibility返回无效如果多值字段选择了多个选项,或者返回唯一选定的值 if ,当然,它只选择了一个值。
我的问题具体是如何使 where 子句返回给我,表 表中的多值字段是否包含一组值。通过包含我的意思是“已选择”。例如,如果对于表中的给定注册表,多值字段选择了选项A,B和C,我希望能够查询是否选择了A和B,并且它必须为此注册表返回true。我甚至可以在查询中手动输入这些值,并担心如何从复选框列表中检索它们。我现在主要关心的是如何编写查询。
答案 0 :(得分:0)
这取决于您的具体情况。听起来你正在尝试从表单运行查询,因此一种方法是迭代组合框firstm中的值,然后将它们存储在表单上的隐藏文本框中。让查询的WHERE条件引用此“固定字段”,简化查询。
这是一篇关于这个主题的好文章:
如果你能解释一下你的具体情况,我相信我可以提供帮助。
...谢谢