加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 如何查看特定列中是否存在多个具有相同值的行?

发布时间:2020-12-12 06:58:03 所属栏目:MsSql教程 来源:网络整理
导读:我正在寻找一种从SELECT语句中排除行的有效方法WHERE返回多行,并且某列的值相同. 具体来说,我正在选择一堆帐户,但需要排除在多个帐户中找到相同SSN的帐户. 解决方法 这将返回所有正好1行的SSN select ssn,count(*)from SomeTablegroup by ssnhaving count(*)
我正在寻找一种从SELECT语句中排除行的有效方法WHERE返回多行,并且某列的值相同.

具体来说,我正在选择一堆帐户,但需要排除在多个帐户中找到相同SSN的帐户.

解决方法

这将返回所有正好1行的SSN
select ssn,count(*)
from SomeTable
group by ssn
having count(*) = 1

这将返回超过1行的所有SSN

select ssn,count(*)
from SomeTable
group by ssn
having count(*) > 1

您的完整查询将是这样的(将在SQL Server 7及更高版本上运行)

select a.* from account a
join(
select ssn
from SomeTable
group by ssn
having count(*) = 1) s on a.ssn = s.ssn

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读