在没有笛卡尔积的情况下执行多表查询

时间:2014-10-26 02:47:03

标签: multi-table

刚刚学习MS Access 2013,并且对如何使用多表查询检索我想要的数据感到困惑。我有两个表:一个存储组织列表,另一个存储个人名称列表。在第三个表中,我有一个查找字段,我希望由所有这些组织和个人填充。当我使用查询设计工具尝试实现这一点时,我唯一可以产生的是笛卡尔积。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

你绝对不想要笛卡儿产品。

虽然我对MS Access不太熟悉(SQL更像是我的领域),但MS Access只是数据库的前端,它实际上将您使用Query Design工具设计的内容转换为SQL方言称为Access SQL。

以下是您要执行的操作:将Organizations表格与Individuals关联,加入条件为Organizations Individuals的主键Name | OrganizationId ____ | ______________ John | 1 1}}的外键。所以如果你的表看起来像这样......

个人表:

OrganizationId | OrganizationName
______________ | ______________
1              | StackOverflow

组织表:

Individual.OrganizationId

您希望设计查询,以便joined(外键)为Organization.OrganizationId至{{1}}(主键)