【问题标题】:Find the record duplicate and say the duplicate count for every record查找重复记录并说出每条记录的重复计数
【发布时间】:2021-03-12 18:02:53
【问题描述】:

我有一个具有重复值系列名称的表。我想要一列显示每条记录的姓氏重复次数。

输入:

First Name Family Name
George bush
Donald trump
Ilana trump
David trump
Robert bush
Amber Monk

预期输出

First Name Family Name Count
George bush 2
Donald trump 3
Ilana trump 3
David trump 3
Robert bush 2
Amber Monk 1

【问题讨论】:

    标签: sql sql-server


    【解决方案1】:

    你也可以使用窗口函数来做到这一点。

    select
        [First Name],
        [Family Name],
        count ([Family Name]) over (partition by [Family Name])
    from
        Table1
    

    【讨论】:

    • 不是“也”。这是首选方法。无需为 count() 重复列名,因此 count(*) 也可以使用 - 并且更容易键入。
    【解决方案2】:

    模型应该添加新的属性计数。 所以模型有 3 个属性,Firstname,FamilyName 和 count。 然后在将数据从 db 提取到列表中之后,您必须运行一个嵌套循环来计算所有重复的姓氏。 示例:说列表名称是 namelist,

    foreach(var item in namelist) {
    
     string name = item.FamilyName;
    
    foreach(var item2 in namelist){
    
    if(name== item2.FamilyName){
    
    count++;
    
    }
    }
    
    item.Count = count;
    
    }
    

    【讨论】:

      猜你喜欢
      • 2019-09-24
      • 1970-01-01
      • 2016-07-03
      • 2014-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-28
      • 2021-08-31
      相关资源
      最近更新 更多