MYSQL怎么实现两个表相减 求这样的SQL语句
发布网友
发布时间:2022-05-07 18:28
我来回答
共5个回答
热心网友
时间:2022-05-07 19:57
UPDATE
A
SET
A.数量 = A.数量 - B.退货数量
FROM
A JOIN B
ON (A.物料编号 = B.物料编号);
上面这种2表关联更新写法
对于 A 表 与 B 表, 是 1对1 的情况下, 是没有问题的。
对于 A 表与 B 表, 是 1对多的情况下, 就没有测试过了。
热心网友
时间:2022-05-07 21:15
把两张表通过物料编号(反正两张表的连接字段)连接起来,这样的话数量字段和退货数量字段相当于在一个表中,接下来减法
热心网友
时间:2022-05-07 22:50
有mysql2000吗? 还是SQL Server 2000?
呵呵,不管了。如果是SQL Server,运行下面的命令就没错。MySQL的话,也可以试了,大差不差吧。
update a
set a.数量=a.数量-b.退货数量
from a,b
where a.物料编号=b.物料编号追问错误提示“对象名 a 无效 ”
“对象名 b 无效 ”
我是在SQL查询分析器里做验证的,最后才写进程序里。。。在线等!!
热心网友
时间:2022-05-08 00:41
也许要建一个触发器才能实现。追问怎么建??
热心网友
时间:2022-05-08 02:49
上面的update 完全正确,可以用