我需要使用触发器连接两个表的数据



我是sql的新手,我无法弄清楚这个触发器。

第一个表是Order_Details,它有三行,

O_Id
F_Id
Price(Int)

第二个表是Payment_Details它有两行,

O_Id
Total_Price(Int)

下订单时,Order_Details 会多行使用不同食物 (F_Id) 但订单号相同 (O_Id)。因为一个订单可以有多个食品

所以我需要一个触发器来计算单个订单中所有食品价格 (Total_Price) 的总和。

这有什么可能的触发因素吗?

如果这些确实是唯一的列,您最好将其创建为视图。

CREATE TABLE Order_Details(
O_Id int,
F_Id int,
Price Int);
CREATE VIEW Payment_Details AS
SELECT O_Id,
SUM(Price) AS Total_Price
FROM Order_Details
GROUP BY O_Id;
insert into Order_Details values
(1,1,20),(1,2,15);
select * from Payment_Details;
O_Id |Total_Price ---: |----------:  1 |         35

db<>在这里小提琴

最新更新