gpt4 book ai didi

MySQL 使用内连接进行更新

转载 作者:行者123 更新时间:2023-11-29 12:52:52 25 4
gpt4 key购买 nike

我有 3 个表、产品、仓库和订单详细信息。客户下订单时,会将一个(或多个)产品ID放入订单明细表中。我想做的是通过触发器减少仓库表中该产品的数量。我已经提出这个查询,它选择这个需要减一的特定数字,但是,我无法将其转换为更新。我尝试了很多变体,但似乎都不起作用,因为我无法使用(使用更新时在其中选择****)

SELECT warehouse.kolicina
FROM warehouse
INNER JOIN order_details ON warehouse.productID = order_details.productID
WHERE warehouse.productID = (
SELECT order_details.productID
FROM order_details
LEFT OUTER JOIN warehouse ON ( warehouse.productID = order_details.productID )
ORDER BY order_details.orderID DESC

所以基本上我想做的是

after each insert on table order_details
UPDATE warehouse
SET quantity = quantity - 1
where warehouse.productID = last productID from table order_details

如果有人知道如何使其工作,我将非常感激。

最佳答案

您将创建一个更新后触发器并在那里进行更新。完整的代码如下所示:

CREATE TRIGGER order_details_trigger AFTER INSERT ON order_details
FOR EACH ROW
BEGIN
UPDATE warehouse
SET quantity = quantity - 1
where warehouse.productID = new.productID;
END;

|

关于MySQL 使用内连接进行更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24469993/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com