表结构及数据

 mysql 删除重复数据,保留一条 随笔

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

删除name列重复的数据但是要保留一条

sql:

DELETE FROM my_test WHERE id NOT IN (SELECT * FROM (SELECT max(r.id) FROM my_test AS r GROUP BY r. NAME)  t);

注意:里面的子查询结果需要使用别名(标红的sql部分)再包裹一次 ,否则会报错,因为mysql不允许删除或更新的子查询直接操作同一张表,所以这里通过别名再包裹一次即可

转载请注明来源

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄