gpt4 book ai didi

mysql - 如何从 MySQL 表中删除重复的行

转载 作者:可可西里 更新时间:2023-11-01 06:39:51 27 4
gpt4 key购买 nike

我有一个 MySQL 表:

ID, Col1, Col2, Col3, Col4, etc...

ID 是一个主键,并且自表创建以来一直有效。

我想做的是删除所有其他列都相同的记录,只保留一条记录。

最佳答案

DELETE DupRows.*
FROM MyTable AS DupRows
INNER JOIN (
SELECT MIN(ID) AS minId, col1, col2
FROM MyTable
GROUP BY col1, col2
HAVING COUNT(*) > 1
) AS SaveRows ON SaveRows.col1 = DupRows.col1 AND SaveRows.col2 = DupRows.col2
AND SaveRows.minId <> DupRows.ID;

当然你得把这三个地方的col1,col2扩展到所有的列。

编辑:我刚刚将其从我保留并重新测试的脚本中提取出来,它在 MySQL 中执行。

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

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