架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7564|回复: 1

[资料] sql 查出一张表中重复的所有记录数据

[复制链接]
发表于 2018-9-15 09:55:18 | 显示全部楼层 |阅读模式
1、在面试的时候碰到一个 问题,就是让写一张表中有id和name 两个字段,查询出name重复的所有数据,现在列下:


2、查询出所有数据进行分组之后,和重复数据的重复次数的查询数据,先列下:


3、一下为 查看别人的 结果,现列下:查询及删除重复记录的方法大全


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


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


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


4、删除表中多余的重复记录(多个字段),只留有rowid最小的记录


5、查找表中多余的重复记录(多个字段),不包含rowid最小的记录


(二)

比方说
在A表中存在一个字段“name”,
而且不同记录之间的“name”值有可能会相同,
现在就是需要查询出在该表中的各记录之间,“name”值存在重复的项;


如果还查性别也相同大则如下:


(三)

方法一

方法二"重复记录"有两个意义上的重复记录,一是完全重复的记录,也即所有字段均重复的记录,二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略。


1、对于第一种重复,比较容易解决,使用



就可以得到无重复记录的结果集。  

如果该表需要删除重复的记录(重复记录保留1条),

可以按以下方法删除



发生这种重复的原因是表设计不周产生的,增加唯一索引列即可解决。


2、这类重复问题通常要求保留重复记录中的第一条记录,操作方法如下  假设有重复的字段为Name,Address,要求得到这两个字段唯一的结果集



最后一个select即得到了Name,Address不重复的结果集(但多了一个autoID字段,实际写时可以写在select子句中省去此列)


(四)

查询重复








上一篇:{"error_msg": "IAM Certification failed"}
下一篇:MSSQL 查看当前连接和未结束的事务
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-5-2 06:08

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表