【问题标题】:SUM the number of duplicate rowsSUM 重复行数
【发布时间】:2014-11-13 05:11:04
【问题描述】:

我使用SELECT count(ID) FROM table1 GROUP BY ID HAVING count(ID) > 1 来根据我的 ID 字段(不是唯一值)获取我有多少重复行,其中每个值是每个具有重复的 id 的重复数,我怎么能更改上一个查询以获得这些值的总和? 在过去的一个小时里,我尝试了SELECT count(SELECT count(ID) FROM table1 GROUP BY ID HAVING count(ID) > 1) 之类的东西,但没有任何运气。

输入:

    ID|char
    01|f
    01|q
    01|r
    02|q
    03|c
    03|a
    03|s
    03|s
    04|r
    05|q
    06|f
    06|q

我的查询结果:

count(ID)
3
4
2

(3 因为我们有 3 行 id==03,4-->4*id==03 等)

想要的输出:

X
9

(9 来自 3+4+2)

提前感谢您的宝贵时间。

【问题讨论】:

  • 请编辑您的问题以包含一些示例输入和输出。这将有助于我们回答您的问题。
  • 完成,Barmar 在下面的回答正是我想要实现的,谢谢。

标签: mysql count duplicates


【解决方案1】:

使用子查询:

SELECT SUM(dupCount)
FROM (SELECT COUNT(*) AS dupCount
      FROM table1
      GROUP BY ID
      HAVING dupCount > 1) AS x

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-06
    • 1970-01-01
    • 2021-12-14
    • 1970-01-01
    • 2017-03-20
    • 2023-03-09
    • 1970-01-01
    • 2021-12-03
    相关资源
    最近更新 更多