这篇文章主要介绍了mysql查找删除重复数据并只保留一条实例详解的相关资料,需要的朋友可以参考下

有这样一张表,表数据及结果如下:

school_idschool_nametotal_studenttest_takers1239Abraham Lincoln High School55501240Abraham Lincoln High School70351241Acalanes High School120891242Academy Of The Canyons30301243Agoura High School89401244Agoura High School10050

我们可以看出,school_name的字段值有重复数据(Abraham Lincoln High School 和Agoura High School分别出现两次),那么如何删除这两条数据,从而只让这两个数值出现一次呢? 具体实现方法如下:

1、删除重复记录,保存Id最小的一条

delete FROM `test` WHERE `school_name` in (SELECT `school_name`
FROM `test` 
GROUP BY `school_name` 
HAVING COUNT( * ) >1) and school_id not in (select min(school_id) from test group by school_id having count(* )>1)

先使用GROUP BY having语法查询出重复的数据,然后删除重复数据并保留school_id最小的一条.

2、删除重复记录,保存Id最大的一条

delete FROM `test` WHERE `school_name` in (SELECT `school_name`
FROM `test` 
GROUP BY `school_name` 
HAVING COUNT( * ) >1) and school_id not in (select max(school_id) from test group by school_id having count(* )>1)

原理和上面一样。

以上就是mysql查找删除重复数据并只保留一条实例详解,希望能帮助到大家,谢谢大家对本站的支持!

    无相关信息
最新资讯
刘强东:2019年京东面临挑战 通过变革实现收入增长

刘强东:2019年京东面临

刘强东表示,通过组织变革,京东在极具挑战的环境中始终保
刘强东公开信:保持定力坚定前行 实现高质量加速增长

刘强东公开信:保持定

刘强东新春致员工信:保持定力 坚定前行 实现高质量加速
黄章时隔半年再发声 称会与魅族同在

黄章时隔半年再发声

魅族董事长黄章今日在魅族社区发声,称会与魅族和魅友同
创业一年,To B创始人:我们99%会挂掉

创业一年,To B创始人:我

过去12月,最火爆,未来12个月,最危险,企业服务领域这条赛道
孙正义重金独角兽梦碎:做披萨太难吃 只好去做披萨盒

孙正义重金独角兽梦碎

你还知道这样“伪技术”的公司和案例吗?
刷B站的年轻人,到底在刷什么?

刷B站的年轻人,到底在

吃透B站,抓住年轻人。
最新文章
php求斐波那契数的两种实现方式【递归与递推】

php求斐波那契数的两

这篇文章主要介绍了php求斐波那契数的两种实现方式,结
浅析PHP7 的垃圾回收机制

浅析PHP7 的垃圾回收

垃圾回收机制是一种动态存储分配方案。它会自动释放程
PHP 模拟登陆功能实例详解

PHP 模拟登陆功能实例

这篇文章主要介绍了PHP 模拟登陆功能,结合实例形式详
Yii框架连表查询操作示例

Yii框架连表查询操作

这篇文章主要介绍了Yii框架连表查询操作,结合实例形式
mysqli扩展无法在PHP7下升级问题的解决

mysqli扩展无法在PHP7

这篇文章主要给大家介绍了关于mysqli扩展无法在PHP7下
php探针不显示内存解决方法

php探针不显示内存解

在本篇文章里小编给大家整理的是关于php探针不显示内