最新消息: 关于Git&GitHub 版本控制你了解多少?
您现在的位置是:群英 > 数据库 > MySQL数据库 >
SQL删除重复数据操作步骤
PHP中文网发表于 2021-06-10 16:23 次浏览

在sql中,可以使用select语句删除重复数据,语法为:“select * from 字段 where 字段id in (select 字段id from 字段 group by 字段 having count(字段id) > 1)”。

本教程操作环境:windows7系统、mysql8.0版本、Dell G3电脑。

用SQL语句,删除掉重复项只保留一条

在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢

查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断

select * from people 
where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)

扩展:

删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录

delete from people
where   peopleName in (select peopleName    from people group by peopleName      having count(peopleName) > 1)
and   peopleId not in (select min(peopleId) from people group by peopleName     having count(peopleName)>1)

查找表中多余的重复记录(多个字段)

select * from vitae a
where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)

删除表中多余的重复记录(多个字段),只留有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)

查找表中多余的重复记录(多个字段),不包含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)

消除一个字段的左边的第一位:

update tableName set [Title]=Right([Title],(len([Title])-1)) where Title like '村%'

消除一个字段的右边的第一位:

update tableName set [Title]=left([Title],(len([Title])-1)) where Title like '%村'

假删除表中多余的重复记录(多个字段),不包含rowid最小的记录

update vitae set ispass=-1where peopleId in (select peopleId from vitae group by peopleId

相关推荐:《mysql教程》

以上就是SQL如何删除重复数据的详细内容,更多请关注群英网络其它相关文章!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
相关信息推荐
2021-09-14 17:12:20 关键词:sql server日期函数
摘要:今天给大家分享一些SQL Server中常用日期函数及其用法,例如,GETDATE() 、 DATEADD(日期部分,常数,日期)、 DATEDIFF( 日期部分,日期1,日期2) 、 DATENAME() 、DATEPART()、DAY() 等等,下文都有示例供大..
2021-09-14 17:05:37 关键词:sqlserver表复制
摘要:今天给大家分享的是SQLserver数据库表复制的内容,但是我们最终的需求是表复制到另一个数据库,那么这应该怎样做呢,接下来我们详细了解看看SQLserver中是怎样实现数据库表复制到另..
2021-08-30 17:41:03 关键词:sqlserver视图
摘要:SQL Server视图可以做什么?视图在SQL Server中是很基础的一个知识,也是很重要的一个内容,这篇文章就主要给大家介绍一下视图是什么以及可以做什么,还有对视图的基本操作,有这方面..
2021-08-30 17:40:52 关键词:sqlserver模糊查询
摘要:sql server中怎样进行模糊查询?查询数据是数据库的常见操作,一般我们有完整查询和模糊查询,而进行模糊查询的方法有很多,下面小编就整理了一下sql server进行模糊查询的方法,有需..
2021-08-28 17:43:06 关键词:sql server 连接查询
摘要:这篇文章主要给大家分享的是SQL Server连接查询使用的实例以及要注意的事项,下文实例对新手学习连接查询有一定的参考价值,有这方面学习需要的朋友可以了解看看,下面一起跟随小..