gpt4 book ai didi

MYSQL在group by中有共同的记录

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

这是我的 table :

user     presenter   price  
------ ------------ --------
84 84 5000
88 84 3000
89 84 4000
89 84 7000

我将按用户 对这个表进行分组并汇总每个用户的总价格,还包括他们的presenter id 的行等于用户
最终结果应该是:

user          total_price  
------ ------------------
84 5000 + 3000 + 4000 + 7000
88 3000
89 4000 + 7000

最佳答案

您可以为此使用UNION ALL:

SELECT user, SUM(price) AS total_price
FROM (
SELECT user, price
FROM mytable

UNION ALL

SELECT presenter AS user, price
FROM mytable AS t1
WHERE presenter <> user AND
EXISTS (SELECT 1
FROM mytable AS t2
WHERE t1.presenter = t2.user)) AS t
GROUP BY user

第二个查询将所有具有 presenter 且也是 user 的记录附加到 user 数据。外部查询仅使用 GROUP BY,以便为每个 user 计算 priceSUM

Demo here

关于MYSQL在group by中有共同的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38147815/

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