mysql,如何删除重复数据?

时间:2011-10-06 20:02:46

标签: php mysql

我有一个表有一些重复的值,我想删除它们:

表1:

id   |   access       |   num
12       1144712030       101
13       1144712030       101
14       1154512035       102
15       1154512035       102

我想删除重复项,所以我将离开:

id   |   access       |   num
12       1144712030       101
14       1154512035       102

任何想法如何在mysql命令中执行此操作?

感谢

3 个答案:

答案 0 :(得分:2)

我认为更简单的解决方案是:

CREATE TABLE new_table as SELECT id,DISTINCT access,num FROM original_table
TRUNCATE TABLE original_table
INSERT INTO original_table SELECT * FROM new_table
DROP TABLE new_table;

注意:

我认为可以使用某种游标,也许是临时表。但你应该非常小心。

答案 1 :(得分:1)

如果你的表名为foo,在foo_old中重命名,则重新创建表foo作为与foo_old相同的结构。 使用获得的DISTINCT运算符进行查询,并在表foo_old上报告的结果在foo中输入。

答案 2 :(得分:0)

在这里快速搜索DELETE DUPLICATE ROWS

你会发现很多例子。