我正在尝试在Access中执行此操作。
我有两张桌子:名为2012& 2013 两个表都具有相同的字段:年份,销售,发票,部件号,说明
我需要一份最终报告(查询),为所有零件编号添加销售和发票。例如;零件号123在2012年有1个销售,2013年有3个销售,结果将是4个销售。我需要销售和发票领域的总和。
表有不同的记录数。需要显示所有记录。
表1示例
Year Sales Invoices Part Number Description
2012 0 0 1234 HAT
2012 3 3 5678 JACKET
表2示例
Year Sales Invoices Part Number Description
2013 17 17 1234 HAT
2013 1 1 5678 JACKET
查询示例
Sales Invoices Part Number Description
17 17 1234 HAT
4 4 5678 JACKET
答案 0 :(得分:2)
你需要做两件事:
UNION
查询合并来自2个表格的数据。GROUP BY
)查询以计算UNION
查询返回的结果的总和。首先处理UNION
查询。
SELECT
t1.Sales,
t1.Invoices,
t1.[Part Number],
t1.Description
FROM [TABLE 1] AS t1
UNION ALL
SELECT
t2.Sales,
t2.Invoices,
t2.[Part Number],
t2.Description
FROM [TABLE 2] AS t2
根据需要调整(未经测试的SQL)。然后将其用作GROUP BY
查询的子查询数据源。
SELECT
sub.[Part Number],
sub.Description,
Sum(sub.Sales) AS SumOfSales,
Sum(sub.Invoices) AS SumOfInvoices
FROM
(
SELECT
t1.Sales,
t1.Invoices,
t1.[Part Number],
t1.Description
FROM [TABLE 1] AS t1
UNION ALL
SELECT
t2.Sales,
t2.Invoices,
t2.[Part Number],
t2.Description
FROM [TABLE 2] AS t2
) AS sub
GROUP BY
sub.[Part Number],
sub.Description