MySQL中查询、删除重复记录的方法大全
发布时间 - 2026-01-11 01:58:14 点击率:次前言

本文主要给大家介绍了关于MySQL中查询、删除重复记录的方法,分享出来供大家参考学习,下面来看看详细的介绍:
查找所有重复标题的记录:
select title,count(*) as count from user_table group by title having count>1;
SELECT * FROM t_info a WHERE ((SELECT COUNT(*) FROM t_info WHERE Title = a.Title) > 1) ORDER BY Title DESC
一、查找重复记录
1、查找全部重复记录
SELECT * FROM t_info a WHERE ((SELECT COUNT(*) FROM t_info WHERE Title = a.Title) > 1) ORDER BY Title DESC
2、过滤重复记录(只显示一条)
Select * From HZT Where ID In (Select Max(ID) From HZT Group By Title)
注:此处显示ID最大一条记录
二、删除重复记录
1、删除全部重复记录(慎用)
Delete 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1)
2、保留一条(这个应该是大多数人所需要的 ^_^)
Delete HZT Where ID Not In (Select Max(ID) From HZT Group By Title)
注:此处保留ID最大一条记录
三、举例
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断
select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)
2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录
delete from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1) and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )>1)
3、查找表中多余的重复记录(多个字段)
select * from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)
4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录
delete from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1) and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)
5、查找表中多余的重复记录(多个字段),不包含rowid最小的记录
select * from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1) and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)
四、补充
有两个以上的重复记录,一是完全重复的记录,也即所有字段均重复的记录,二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略。
1、对于第一种重复,比较容易解决,使用
select distinct * from tableName
就可以得到无重复记录的结果集。
如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除
select distinct * into #Tmp from tableName drop table tableName select * into tableName from #Tmp drop table #Tmp
发生这种重复的原因是表设计不周产生的,增加唯一索引列即可解决。
2、这类重复问题通常要求保留重复记录中的第一条记录,操作方法如下
假设有重复的字段为Name,Address,要求得到这两个字段唯一的结果集
select identity(int,1,1) as autoID, * into #Tmp from tableName select min(autoID) as autoID into #Tmp2 from #Tmp group by Name,autoID select * from #Tmp where autoID in(select autoID from #tmp2)
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。
# mysql删除重复记录
# mysql
# 查询重复记录
# 删除重复的记录
# 解析mysql中:单表distinct、多表group by查询去除重复记录
# mysql insert if not exists防止插入重复记录的方法
# mysql删除重复记录语句的方法
# mysql 数据表中查找重复记录
# 使用mysql的disctinct group by查询不重复记录
# 使用distinct在mysql中查询多条不重复记录值的解决办法
# MySQL避免插入重复记录的方法
# 多个
# 一是
# 这两个
# 这类
# 给大家
# 来看看
# 只显示
# 这篇文章
# 谢谢大家
# 第一条
# 大多数人
# 所需要
# 比较容易
# 第一种
# 就可以
# 操作方法
# 不包含
# 也即
# 应该是
# 有两个
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
香港网站服务器数量如何影响SEO优化效果?
Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
JavaScript数据类型有哪些_如何准确判断一个变量的类型
用yum安装MySQLdb模块的步骤方法
如何用搬瓦工VPS快速搭建个人网站?
Laravel如何使用withoutEvents方法临时禁用模型事件
HTML 中动态设置元素 name 属性的正确语法详解
无锡营销型网站制作公司,无锡网选车牌流程?
Python文本处理实践_日志清洗解析【指导】
个人摄影网站制作流程,摄影爱好者都去什么网站?
Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲
如何基于PHP生成高效IDC网络公司建站源码?
LinuxShell函数封装方法_脚本复用设计思路【教程】
UC浏览器如何设置启动页 UC浏览器启动页设置方法
佛山企业网站制作公司有哪些,沟通100网上服务官网?
Laravel如何操作JSON类型的数据库字段?(Eloquent示例)
Laravel Admin后台管理框架推荐_Laravel快速开发后台工具
大连网站制作公司哪家好一点,大连买房网站哪个好?
Laravel如何使用Blade模板引擎?(完整语法和示例)
Laravel如何与Pusher实现实时通信?(WebSocket示例)
phpredis提高消息队列的实时性方法(推荐)
laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法
为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】
大连 网站制作,大连天途有线官网?
高防服务器:AI智能防御DDoS攻击与数据安全保障
Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】
,在苏州找工作,上哪个网站比较好?
Laravel模型关联查询教程_Laravel Eloquent一对多关联写法
Laravel如何生成API文档?(Swagger/OpenAPI教程)
谷歌Google入口永久地址_Google搜索引擎官网首页永久入口
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
详解Android中Activity的四大启动模式实验简述
Laravel如何实现API资源集合?(Resource Collection教程)
JavaScript如何操作视频_媒体API怎么控制播放
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
Laravel Docker环境搭建教程_Laravel Sail使用指南
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
如何构建满足综合性能需求的优质建站方案?
常州企业网站制作公司,全国继续教育网怎么登录?
怎么用AI帮你为初创公司进行市场定位分析?
Laravel如何配置和使用缓存?(Redis代码示例)
Laravel怎么判断请求类型_Laravel Request isMethod用法
Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】
如何快速完成中国万网建站详细流程?
进行网站优化必须要坚持的四大原则
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
如何实现javascript表单验证_正则表达式有哪些实用技巧
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解

