【问题标题】:Combine 2 tables in MS Access在 MS Access 中合并 2 个表
【发布时间】:2016-03-23 02:45:10
【问题描述】:

我正在创建一个 Microsoft 访问数据库,以跟踪我们欠不同供应商的金额。目前有一台平板电脑可以存储我每天的运营成本。该表有这些行。表名 = A ID(键)供应商、总工资、费率、天数、人数...总工资 = (ratedaysheadcount)

我写了这个 sql 来给我我的数据。

SELECT Sum([A].TOTALPAY) AS TEMPCharge, [A].VENDOR AS TempVENDOR
FROM A
GROUP BY VENDOR
ORDER BY VENDOR;

我有这款平板电脑,我想将它与另一个显示供应商总数的表格混合,并将结果存储在第二个表格中。这个平板电脑(表 B)有这些行 Id、供应商、totalPay .....我想导入我的 sql 结果来填充表 B 的 totalpay。它与供应商匹配。我查看了 Insert INTO 但我不能使用 where 语句。任何建议都会很好,

【问题讨论】:

  • 仅供参考:MS Access 与 MySQL 完全无关。

标签: database ms-access join


【解决方案1】:

这会让您从 Table_A 到 Table_B 进行简单的插入:

INSERT INTO Table_B (Vendor,totalPay)`
SELECT VENDOR,SUM(TOTALPAY)
FROM Table_A
WHERE NOT EXISTS (SELECT 1 FROM Table_B WHERE Vendor=a.Vendor)
GROUP BY VENDOR

如果您要更新 Table_B 中的 EXISTING 记录:

UPDATE Table_B b
SET totalPay=totalPay+(SELECT sum(totalPay) from Table_A WHERE Vendor=b.Vendor)
WHERE EXISTS (SELECT 1 FROM Table_A WHERE Vendor=b.Vendor)

【讨论】:

  • 感谢您的帮助。我正在考虑进行更新,当我在这里使用您的代码时,我似乎仍然遇到错误。我在第二行得到一个语法错误缺少运算符
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-29
  • 2021-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多