基本上我想在新表中添加/组合2个表的结果,如下所示:
(如果colA& colB匹配,则相加值,否则为原值)
我尝试使用下面的查询(在访问VBA中),但它提供了比我想要的更多:
SELECT table1.A, table1.B, table1.C
FROM table1, table2
WHERE table1.A <> table2.A
UNION
SELECT table1.A, table1.B, table1.C+table2.C AS SUM
FROM table1, table2
WHERE table1.A = table2.A AND table1.B = table2.B
UNION
SELECT table2.A, table2.B, table2.C
FROM table1, table2
WHERE table1.A <> table2.A;
尽管可以使用excel中的vlookup轻松完成;它并不像访问那么简单。使用UNION甚至是正确的吗?另外我想坚持使用查询,而不是使用记录集,其中原始数据有10000多行
答案 0 :(得分:1)
SELECT A, B, SUM(C)
FROM (
SELECT A, B, C
FROM Table1
UNION ALL
SELECT A, B, C
FROM Table2
) T
GROUP BY A, B
ORDER BY A, B