删除一张表中的重复数据

表:tt

字段

id     name

1       c1

2       c1

3       c2

4       c3

5       c2

方法一:delete from tt where id in (select * from (select max(id) from tt group by name having count(name)>1) as b );

 

方法二:delete s1 from tt as s1 left join (select * from tt  group by name having count(name)>1)as s2 on s1.name = s2.name where s1.id>s2.id;

posted @ 2017-03-01 14:50  敲一敲  阅读(293)  评论(0编辑  收藏  举报