gpt4 book ai didi

mysql - 我可以在 UPDATE 表 MySQL 事务中使用 GROUP BY

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

我有两个表:

m3clients
client balance
joe 0
mark 0
jeff 0

m3orders
client balance
joe -100
joe 50
joe -45
mark -10
mark 5
jeff 60

我需要更新 m3clients 表的余额字段,其中包含附加在其名称上的余额总和。

所以,它会读成这样:

m3clients
joe -95
mark -5
jeff 60

我应该把 GROUP BY 语句放在更新语句的什么地方?

UPDATE m3clients
INNER JOIN m3orders ON (m3orders.client = m3clients.client)
SET m3clients.balance = m3orders.balance

最佳答案

像这样尝试:

UPDATE m3clients m
INNER JOIN (
SELECT client,SUM(balance) as bal
FROM m3orders
GROUP by client) a ON m.client = a.client
SET m.balance = a.bal

这使用子查询对每个客户的余额求和,然后将其与 m3clients 表连接起来,以便能够使用计算出的余额更新它。

关于mysql - 我可以在 UPDATE 表 MySQL 事务中使用 GROUP BY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20498845/

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