SQL:如何更新表1的值并将表2中的更改实现为welll?

时间:2018-07-29 02:52:36

标签: mysql sql sql-update

我有两个表,并且我正在尝试根据第二个表中的值更新第一个表。表1包含总重量的总和,表2包含重量。将这些值加到表2中之后,它就会在表1中显示总计。

例如,如果我更新表2中的外键,则表中的金额应更新。请参考所附的屏幕截图。

enter image description here

我的第一个表sql:

select LodingZoneID, Finaltotal from TransitList

我的第二个表sql:

SELECT  `Suburb`, `LodingZoneID`, Total FROM `GenerateRun` 

2 个答案:

答案 0 :(得分:1)

没有理由使用表1。您可以运行查询:

select fk, sum(val)
from table2
group by fk;

如果您确实需要将总和存储在表1中,那么您将使用表2上的触发器来处理insert / update / delete。这相当麻烦,通常最好在需要时进行计算,而不是尝试预先存储结果。

答案 1 :(得分:0)

或者,您可以创建具有所需输出的视图

-CREATE VIEW'TransitList'AS SELECT LodingZoneID,SUM(总计)FinalTotal来自GenerateRun GROUP BY LodingZoneID;

只要您想访问数据,就可以使用

-SELECT LodingZoneID,来自运输清单的FinalTotal;