MYSQL从2个单独的表中的总付款和总和费用中获得余额并将其更新为第3个表格?

时间:2013-09-24 04:26:28

标签: mysql sql-server join sum

我有3个表,ChargeTable,PaymentTable,CustomerTable。

ChargeTable有CustomerID,ChargeAmt

PaymentTable有CustomerID,PaymentAmt

CustomerTable具有CustomerID,Balance

我需要通过CustomerID分隔它们,加上金额,然后从费用中减去付款以获得余额,最后将其发布到CustomerTable.Balance。

我是SQL的新手,已经花了几个小时摆弄这个,我可以得到一些工作,但从来没有整个节目。对于这个,任何人都有一个很好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

INSERT INTO CustomerTable (CustomerID, Balance)
SELECT a.CustomerID, SUM(a.Amount) FROM
(
SELECT ct.CustomerID, ct.ChargeAmt as Amount FROM ChargeTable ct
UNION ALL
SELECT pt.CustomerID, -pt.PaymentAmt as Amount FROM PaymentTable pt
) a
GROUP BY a.CustomerID