如何通过另一个表中另一列的聚合数据创建派生列

时间:2015-04-15 16:20:45

标签: mysql sql derived

我有两张桌子:

Book(Name,quantity,supplier)
SuppliedBy (supplier,quantity)

我希望SuppliedBy表中的数量等于该供应商提供的账簿总和,所以我写了一个集合声明

update supplier
set supplier.quantity = (select quantity 
                         from (select sum(quantity) as quantity, SuppliedBy 
                               from book group by SuppliedBy) a
                         where a.SuppliedBy = supplier.SuppliedBy)

但是,我想在添加新书时自动更新SuppliedBy中的数量值。请帮忙

1 个答案:

答案 0 :(得分:0)

我认为你需要在Book表上创建一个插入触发器来更新supliedBy表中的值。