mysql删除一张表的重复数据 保留一条

数据库: pulaw 数据表: dianpu 字段:  mobile
查找字段 mobile 中重复的数据
select mobile,count(mobile) from dianpu group by mobile having count(mobile)>1
这个语句可以查出来某个数据重复的次数,,要想删除里面的重复保留一个要怎么写呢?

 

一、下面是列出要保留的记录ID,可以把这个结果写到一个临时表temp中
SELECT MAX(t2.dianpu_id) AS max_id FROM dianpu t2 GROUP BY t2.mobile

 

二、建立一个临时表(表名:temp,字段:id),此表可供你当次链接的操作里查询.

 

三、DELETE FROM dianpu WHERE dianpu_id NOT IN (SELECT id FROM temp)

 

PS:临时表用完后要记得删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注