【问题标题】:How to do a count 2 columns如何计算 2 列
【发布时间】:2026-02-07 21:30:02
【问题描述】:

我有下表

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=1gov_id=aa3 重复,因此计数为 3。我想计算 cus_idgov_id 相同的实例有多少,如在行中。

cus_id=2gov_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;
    

    【讨论】: