【问题标题】:How to do a count 2 columns如何计算 2 列
【发布时间】:2021-09-11 06:02:34
【问题描述】:

我有下表

cus_id gov_id name
1 aa Bob
1 bb Bill
1 aa James
2 cc Sam
3 aa Sarah
1 aa Joe
2 cc Nathan

正如您所看到的,cus_id=1 和 gov_id=aa 有 3 重复,因此计数为 3。我想计算 cus_id 和 gov_id 相同的实例有多少,如在行中。

当 cus_id=2 和 gov_id=cc 有 2 个重复项。我想要这样的输出:

cus_id gov_id name count
1 aa Bob 3
1 bb Bill 1
1 aa James 3
2 cc Sam 2
3 aa Sarah 1
1 aa Joe 3
2 cc Nathan 2

我试过了:

SELECT cus_id, gov_id, name, count(*) as count
FROM test_table;

【问题讨论】:

    标签: sql database oracle count


    【解决方案1】:

    您可以使用分析功能:

    select t.*,
           count(*) over (partition by cus_id, gov_id) as cnt
    from t;
    

    【讨论】:

      猜你喜欢
      • 2016-12-05
      • 2017-11-10
      • 1970-01-01
      • 2021-09-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多