删除mysql数据库中重复数据

最开始用的这个语句,显示报错

delete from con where id in(select min(id) id1 from con group by url having count(url) > 1)
(con为表名,id、url为表中字段名)

删除数据的同时又去查询数据,查询数据的同时又去删除,mysql不支持更新查询同一张表的操作

正确sql如下:

1.先查询到重复的数据

2.把重复的数据作为第三张表

3.再去删除

delete from con where id in(select conn.id1 from(select min(id) id1 from con group by url having count(url) > 1) conn )

猜你喜欢

转载自blog.csdn.net/qq_45619283/article/details/114240637