gpt4 book ai didi

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

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

我读了一些其他关于如何删除没有主键的重复记录的帖子,但他们删除了所有重复的记录,这是我尝试过的

DELETE FROM table WHERE column IN
(
select column from
(
SELECT MAX(column )as column FROM table
GROUP BY column
HAVING COUNT(*) > 2)as table
)

是因为我的表格中只有一列吗?

如果我无法全部删除它们,有没有办法将所有不同的记录复制到另一个表

最佳答案

由于 MySQL 的限制,您的查询失败。只需将其改写为 join 即可。这是一种方法:

DELETE t
FROM table t LEFT JOIN
(SELECT MAX(column ) as column
FROM table
GROUP BY column
) tosave
ON t.column = tosave.column
WHERE tosave.column is null;

编辑:

哎呀。我正在跟踪您的查询的结构。这不适用于一根柱子。您将需要使用临时表来执行此操作并重新插入:

create temporary table temptable as
select distinct column
from tablename;

truncate table tablename;

insert into tablename(column)
select column
from temptable;

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

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