基于一对多关系的表单 - 只显示包含子操作的父记录

时间:2013-08-07 17:09:45

标签: ms-access

我有两个表,一个有父记录,另一个有子记录。

子记录显示在附加到包含父记录的表单底部的子表单中。

我希望主窗体的记录集只包含存在子记录的父记录。但是,当我尝试这样做时,我会得到多个父记录(例如,如果我浏览记录,如果有四个相关的子记录等,我必须传递四个父记录。)

我认为我需要使用GROUP BY但是当我尝试创建一个查询来执行此操作时(因此我可以将表单基于它)它告诉我我需要在所有字段中使用GROUP查询,然后在我这样做时出错。

请帮忙!

由于

1 个答案:

答案 0 :(得分:1)

我不知道你是如何填充主(父)表单的,但如果你找到这个表单的Record Source,从它的Property Sheet,然后点击构建按钮(...)来调用查询生成器,您只需添加(显示)子表即可。假设两个表之间已经存在关系,这将创建一个INNER JOIN。如果还没有关系(连接),则从父表中的主键拖放到子表中的外键。

您不需要包含子表中的任何字段,但您必须在查询网格中包含所需的所有字段。正如我所提到的,添加子表创建了一个INNER JOIN,它只显示父表中的记录,如果它们在子表中有记录。

关闭并保存查询生成器。