SQL经验分享(一):找出某列中重复值

1.找出某列中重复值

SQL中去重,直接用select distinct即可,但是要找到到底重复的是哪几行,重复了多少次,这就需要一些技巧了。

 

1.1找出某列中重复值语法

select 字段名,count(字段名) from 表名 group by 字段名 having count(字段名)>1

 

1.1找出某列中重复值实例

 样例数据:




 
 

要求:找出学校的重复项目

语句:select school,count(school) as 次数 from Table_1 group by school having count(school)>1

执行结果:

 

 


 
 

经过网友提醒,用自连接也可以实现。

1.2用自连接实现

样例数据:




 
 

 

语言:

SELECT distinct a.[id]

      ,a.[name]

      ,a.[school]

      ,a.[address]

      ,a.[score]

      ,a.[data]

  FROM [mydata].[dbo].[Table_1]as a , [mydata].[dbo].[Table_1]as b

where a.id!=b.id

and a.school=b.school

order by a.school

执行结果:

 




 
 

 

解释:因为有三个id不同,但是school同,用

a.id!=b.id

and a.school=b.school

就会两两组合,出现6个情况。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值