试图获得不同的表在MySQL中的两个不同的数字的差异

承租人:

roomid monthlypay
12     1000
24     1000

水电费:

roomid  total
12      500
24      1000
UPDATE tenant
SET monthlypay=monthlypay-utilitypayment.total
From tenant s inner join utilitypayment i
    on s.roomid=i.roomid WHERE roomid=12

我正在尝试获取它,所以每当我更新最下面的那个时,它都会减到第一个表上,具体取决于该人想要更新它的房间,但是当我尝试代码时,会发生这种情况

1064-您的SQL语法有误;
评论
念念不忘
念念不忘

在mysql中有效的sintax是

 UPDATE tenant t 
 INNER JOIN utilitypayment i on t.roomid=i.roomid
    AND t.roomid=12
 SET t.monthlypay=t.monthlypay-i.total

要么

 UPDATE tenant t 
 INNER JOIN utilitypayment i on t.roomid=i.roomid
 SET t.monthlypay=t.monthlypay-i.total
 where t.roomid = 12
点赞
评论