gpt4 book ai didi

mysql - MySql 如何求和然后删除重复字段?

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

很抱歉,如果结果是重复的,但我很难找到确切的答案......

我有一个包含“电子邮件”(varchar) 和“点击”(int) 的表。

电子邮件字段包含电子邮件值的重复实例。我想删除重复项并仅保留一个实例,但还要对给定电子邮件实例的“点击”中找到的所有值求和,并更新剩余记录以反射(reflect)这一点。

我可以使用distinct和group by来查看我想要的记录,这是我困惑的总和和更新部分。

谢谢。

最佳答案

我认为您不需要在此处使用 DISTINCT,而是可以对每个 email 值进行分组,同时计算点击次数的总和:

SELECT email, SUM(clicks) AS clickSum
FROM yourTable
GROUP BY email

当您提到“剩余”记录时,您忽略了重复记录是如何被删除的。有选择地删除除一条重复记录之外的所有记录将是一项艰巨的工作。我可能只需将上述查询插入到新表中,删除旧表,然后将新表重命名为旧表即可解决此问题:

CREATE TABLE yourNewTable (`email` varchar(255), `clicks` int);
INSERT INTO yourNewTable (`email`, `clicks`)
SELECT email, SUM(clicks)
FROM yourTable
GROUP BY email

DROP TABLE yourTable
ALTER TABLE yourNewTable RENAME TO yourTable

关于mysql - MySql 如何求和然后删除重复字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39022069/

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