Sql 从具有重复项的列中减去
因此,我需要从“消费”表中减去“qitems”表中的现有数量。但是,有重复项,它只为每个项减去一次。我该怎么办?我附上了表格的截图。提前感谢您的帮助Sql 从具有重复项的列中减去,sql,sql-server,join,Sql,Sql Server,Join,因此,我需要从“消费”表中减去“qitems”表中的现有数量。但是,有重复项,它只为每个项减去一次。我该怎么办?我附上了表格的截图。提前感谢您的帮助 Update qi Set qi.QtyOnHand = (qi.QtyOnHand - c.delqty) From qitem qi Inner Join Consuming c on qi.itemname = c.itemname 根据语法,假设您使用的是SQL Server。不管数据库是什么,想法都是一样的。在执行更新之前,您需要聚合:
Update qi
Set qi.QtyOnHand = (qi.QtyOnHand - c.delqty)
From qitem qi
Inner Join Consuming c
on qi.itemname = c.itemname
根据语法,假设您使用的是SQL Server。不管数据库是什么,想法都是一样的。在执行更新之前,您需要聚合:
Update qi
Set qi.QtyOnHand = (qi.QtyOnHand - c.delqty)
From qitem qi Inner Join
(select c.itemname, sum(c.delqty) as delqty
from Consuming c
group by c.itemname
) c
on qi.itemname = c.itemname;
根据语法,假设您使用的是SQL Server。不管数据库是什么,想法都是一样的。在执行更新之前,您需要聚合:
Update qi
Set qi.QtyOnHand = (qi.QtyOnHand - c.delqty)
From qitem qi Inner Join
(select c.itemname, sum(c.delqty) as delqty
from Consuming c
group by c.itemname
) c
on qi.itemname = c.itemname;
在加入之前,您需要对消费进行分组,并对数量进行合计。请不要加入
itemname
!使用主键和外键。您的语法不是MySQL语法。你确定数据库标签吗?我修好了!很抱歉,您需要分组消费
并在加入之前将数量相加。请不要加入itemname
!使用主键和外键。您的语法不是MySQL语法。你确定数据库标签吗?我修好了!很抱歉,非常感谢!太好了,太谢谢你了!那太完美了