gpt4 book ai didi

mysql - WHERE 子句与 SET 和 UPDATE 子句

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

我必须开始,这里有很多示例,但没有一个适用于我必须使用的多个(在我的例子中是 3 个)表。

这个想法是:当我更新我的一个表(事物)时,我希望我的触发器自动将另一个表(当前)更新为 2 列的乘积值(来自 dudes 表的薪水,以及来自事物的 thing_cost)到一列 curr_cash。

我希望它看起来像:

Money : Date : Id1 (id of person) : Id2 (Id of thing)

例子:

400 03-12-12 34 3
300 03-12-12 34 2
400 03-12-12 4 3

等等。

目前,我的触发器所做的是对所有内容求和并将其与购买某物的人相关联。逻辑失败。

这是我的触发器代码:

create trigger money after update on `things`
for each row
begin
SET @c1 = (SELECT sum(`thing_cost`) from `things`);
SET @c2 = (SELECT sum(`salary`) from `dude_base`);
UPDATE `current` SET `curr_cash` = @c1 * @c2 / 100
end;
$$

我需要添加这样的东西而不是总和:

WHERE id2 from things = id2 from current AND WHERE id1 from dude_base = is1 from current

但是我的语法很糟糕。我在 xampp (phpmyadmin) 上处理 MySQL。

综上所述,我必须知道一个家伙买了什么(确切的 ID),以及什么东西(确切的 ID)。

最佳答案

您可以像这样使用 JOIN 执行此操作:

UPDATE `current` c 
INNER JOIN things t ON c.id2 = t.id2
INNER JOIN dude_base d ON d.id1 = c.is1
SET c.`curr_cash` = t.thing_cost * d.salary / 100;

关于mysql - WHERE 子句与 SET 和 UPDATE 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13679915/

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