sqlserver去重复数据
2016-05-13 00:00
260 查看
摘要: sqlserver查找或去重复数据
在数据库的使用中,我们经常会遇到需要去重或者查找重复数据的情况,二这些情况不外乎两种类型,一种是数据完全重复,另一种是某一个或者几个属性不相同。对于数据全部重复的情况,我们可以直接使用distinct去去重
例如:select distinct * from tableName;
其结果集便是去掉重复数据
对于某一个或者几个属性重复,
比如现在有一人员表 (表名:peosons)
若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来
select p1.* from persons p1,persons p2 where p1.id<>p2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address = p2.address
也可以
Select * From 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1),
当然distinct也是可以的,比如table 表中name有重复数据
则可以如下处理
select *,count(name) from table group by name
这样结果集会多出来一列,但是这一列不去管它便可
在数据库的使用中,我们经常会遇到需要去重或者查找重复数据的情况,二这些情况不外乎两种类型,一种是数据完全重复,另一种是某一个或者几个属性不相同。对于数据全部重复的情况,我们可以直接使用distinct去去重
例如:select distinct * from tableName;
其结果集便是去掉重复数据
对于某一个或者几个属性重复,
比如现在有一人员表 (表名:peosons)
若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来
select p1.* from persons p1,persons p2 where p1.id<>p2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address = p2.address
也可以
Select * From 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1),
当然distinct也是可以的,比如table 表中name有重复数据
则可以如下处理
select *,count(name) from table group by name
这样结果集会多出来一列,但是这一列不去管它便可
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- 数据库链接字符串查询网站
- DB2实例管理
- DB2实例管理
- 保障MySQL数据安全的14个最佳方法
- mysql问答汇集
- 第三章 数据库备份和还原
- 创建一个空的IBM DB2 ECO数据库的方法
- Access 2000 数据库 80 万记录通用快速分页类
- 开通一个数据库失败的原因的和解决办法
- 一个简单的asp数据库操作类
- CentOS下DB2数据库安装过程详解
- EasyASP v1.5发布(包含数据库操作类,原clsDbCtrl.asp)第1/2页
- sql2008 还原数据库解决方案
- Oracle 数据库自动存储管理-安装配置
- Oracle数据库执行脚本常用命令小结
- Oracle 数据库 临时数据的处理方法
- 数据库分页查询语句数据库查询
- 最近比较流行的数据库挂马