我正在建立一个Microsoft访问数据库,以跟踪我们欠不同供应商的数量。目前有一款平板电脑可以存储每天每天的运营成本。这个表有这些行。表名= ID(密钥)供应商,总工资,费率,天数,总人数......总工资=(ratedaysheadcount)
我已经写了这个sql给我的数据。
SELECT Sum([A].TOTALPAY) AS TEMPCharge, [A].VENDOR AS TempVENDOR
FROM A
GROUP BY VENDOR
ORDER BY VENDOR;
我有这款平板电脑,我希望将它与另一个显示供应商总数的表格混合,并将结果存储在第二个表格中。这个平板电脑(表B)有这些行Id,Vendor,totalPay .....我想导入我的sql结果来填充表B的全部付款,其中它与供应商匹配。我看了插入INTO,但我不能使用where语句。任何建议都会很好,
答案 0 :(得分:0)
这将为您提供从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)