mysql查找删除表中重复数据方法总结

(编辑:jimmy 日期: 2024/9/21 浏览:2)

在数据库表里,我们有时候会保存了很多重复的数据,这些重复的数据浪费资源,我们要将其删除掉,应该怎么处理呢?下面来看一下。

先看下我们的表数据,有一些数据是重复的。

mysql查找删除表中重复数据方法总结

要查找重复数据,我们可以使用mysql里的having语句,如图。

mysql查找删除表中重复数据方法总结

执行这个语句后,我们可以看到现在的结果里显示的就是表中重复数据的字段。

mysql查找删除表中重复数据方法总结

要删除这些重复的数据,我们找出这些数据的ID,在select语句里,添加id字段,使用max函数,可以得到重复数据最后面的id。

mysql查找删除表中重复数据方法总结

执行结果如图,得到重复数据的id为8和9。

mysql查找删除表中重复数据方法总结

这样我们就可以使用delete语句来删除这二个id的数据了。

mysql查找删除表中重复数据方法总结

但如果有很多重复的数据,不想一个一个的写这些id怎么办?

添加一个子查询,只把id字段查询出来,如图。

mysql查找删除表中重复数据方法总结

然后在外边添加一个delete语句就行了,详细代码如图。

要注意的是,如果重复数据的行有三行或以上的,我们需要执行这个语句多次才行,因为执行一次只会删除每组重复数据中的一条。

mysql查找删除表中重复数据方法总结

一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。