gpt4 book ai didi

mysql - 从表中删除伪重复项

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

我有一个重复的表,只有一个字段不同,必须清理它们,它看起来像:

id1 | some_name    | some_details

id2 | some_name | some_details

id3 | some_name | some_details

id4 | another_name | another_details

id5 | another_name | another_details

id6 | another_name | another_details

...等等

有人可以帮助使用正确的 SQL 脚本来删除重复项并留下例如以下内容:

id1 | some_name    | some_details

id4 | another_name | another_details

提前致谢!

最佳答案

选择,只需执行GROUP BY,使用min() 获取每个组的第一个id:

select min(id), col2, col3
from tablename
group by col2, col3

删除不需要的行,只需执行GROUP BY,使用min() 获取每个组的第一个id:

delete from tablename t1
where exists (select 1 from tablename t2
where t2.c2 = t1.c2 and t2.c3 = t1.c3
and t2.idcol < t1.idcol)

即如果存在具有相同 col2 和 col3 的另一行,但该行具有较低的 id 值,则删除一行。

关于mysql - 从表中删除伪重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52147600/

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