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

SQL查询,计数和分组

发布时间:2020-12-12 16:21:07 所属栏目:MsSql教程 来源:网络整理
导读:如果我有这样的数据: +---+----+|Key|Name|+---+----+|1 |Dan |+---+----+|2 |Tom |+---+----+|3 |Jon |+---+----+|4 |Tom |+---+----+|5 |Sam |+---+----+|6 |Dan |+---+----+ 什么是SQL查询带回的名称重复2次以上的记录? 所以我想要的结果是 +---+ |Tom|
如果我有这样的数据:
+---+----+
|Key|Name|
+---+----+
|1  |Dan |
+---+----+
|2  |Tom |
+---+----+
|3  |Jon |
+---+----+
|4  |Tom |
+---+----+
|5  |Sam |
+---+----+
|6  |Dan |
+---+----+

什么是SQL查询带回的名称重复2次以上的记录?

所以我想要的结果是

+---+
 |Tom|
 +---+
 |Dan|
 +---+

解决方法

不能简单…
Select
Name,Count(Name) As Count
From
Table
Group By
Name
Having
Count(Name) > 1
Order By
Count(Name) Desc

这也可以扩展到删除重复项:

Delete
From
Table
Where
Key In (
    Select
    Max(Key)
    From
    Table
    Group By
    Name
    Having
Count(Name) > 1)

(编辑:李大同)

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

    推荐文章
      热点阅读