mysql数据从一个表的列到另一个表的列的减法

时间:2017-04-14 14:20:07

标签: mysql jsp

我有两个名为1. users 2. transaction的不同表,两个表都有'amount'名称列。

我需要从users-> amount列中减去transaction-> amount列,然后将该减去的值存储到users-> amount列。

表格结构:

users have column: id(primary key),username,amount
transaction have column: id (primary key),username,transaction_id,amount

我希望users.amount = users.amount - transaction.amount两个表的id相同。

1 个答案:

答案 0 :(得分:0)

尝试以下更新查询:

UPDATE users t1
INNER JOIN transaction t2
    ON t1.id = t2.id
SET t1.amount = t1.amount - t2.amount

这假设,如您所说,两个表中的id列标识用户。它还假定您要无限制地更新users表中的每个记录。如果没有,那么您可以轻松地向更新查询添加WHERE子句。