上图是我的mysql结构和数据,email栏里面很多重复,我要如何删除掉多余重复的,只留下唯一的就行。这个表我没有设置主键。
初学mysql,试了好几个语句都不行。
谢谢。
上图是我的mysql结构和数据,email栏里面很多重复,我要如何删除掉多余重复的,只留下唯一的就行。这个表我没有设置主键。
初学mysql,试了好几个语句都不行。
谢谢。
删除重复数据
如果你想删除数据表中的重复数据,你可以使用以下的SQL语句:
mysql> CREATE TABLE tmp SELECT last_name, first_name, sex
-> FROM person_tbl;
-> GROUP BY (last_name, first_name, sex);
mysql> DROP TABLE person_tbl;
mysql> ALTER TABLE tmp RENAME TO person_tbl;
当然你也可以在数据表中添加 INDEX(索引) 和 PRIMAY KEY(主键)这种简单的方法来删除表中的重复记录。方法如下:
mysql> ALTER IGNORE TABLE person_tbl
-> ADD PRIMARY KEY (last_name, first_name);
5 回答3.3k 阅读✓ 已解决
3 回答3.7k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
5 回答1.4k 阅读
2 回答2.1k 阅读
3 回答2k 阅读
1 回答3.6k 阅读
没办法用
DELETE
来删的,只能重新构建一个表,从原表中SELECT
出来,可以用DISTINCT
,也可以用GROUP BY
。