我在 Microsoft Access 中有三个表:
- 表 1 包括各个公司的名称和对应的唯一 ID(以及有关公司的其他唯一信息);
- 表 2 包括各公司自 2013 年以来的销售信息;
表 3 包括 2014 年每个产品的销售信息。
在表 2 和表 3 中,通常不止一次列出一家公司,对应于不同州的销售额。
在表 2 和表 3 中,公司名称实际上是其对应的 ID 号,我使用查找来显示名称。因此,Table1 是 Table2 和 Table3 的父级。
我想创建一个查询,将每家公司以及表 2 和表 3 中的销售额总和仅列出一次。当我只尝试使用 Table2 或 Table3 时,这很好用,但是当我合并两者时,销售额会膨胀常数标量(例如,一家公司将显示其销售额的 16 倍)。这里发生了什么?
这是 SQL 在 Access 中显示的内容:
SELECT Table2.CompanyName,
Sum(Table2.TotalRevenue) AS [2013 Revenue],
Sum(Table3.TotalRevenue) AS [2014 Revenue]
FROM (Table1 INNER JOIN Table2 ON Table1.Company_ID = Table2.CompanyName)
INNER JOIN Table3 ON Table1.Company_ID = Table3.CompanyName
GROUP BY Table2.CompanyName;
为什么它会多次拉动这些收入值?谢谢!