SQL Entry的Duped

时间:2014-06-20 10:11:52

标签: mysql duplicates duplicate-removal heidisql

在尝试创建测试数据库并意外地复制某个表中的所有内容时,我搞砸了。基本上现在有一次入口曾经有过两次。有没有一种简单的方法来解决这个问题? (使用InnoDB表)

1 个答案:

答案 0 :(得分:0)

使用自动递增主键的另一个好理由。这样,行不会是完全重复的。

可能最快的方法是将数据复制到另一个表中,截断第一个表,然后重新插入:

create temporary table tmp as
   select distinct *
   from test;

truncate table test;

insert into test
    select *
    from tmp;

作为一点注意:在几乎所有情况下,我建议在insert语句中使用完整的列列表。这是一个可选的案例。毕竟,您将所有列放在另一个表中,稍后再将它们放回一个语句中。