You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于agreement_id与type_id多列去重的prod_category计数查询

解决方案

要实现针对agreement_id和type_id的唯一组合,统计每个cus_id下各prod_category的数量,核心是先去除重复的agreement_id + type_id组合记录,再进行分组统计。

方法一:使用DISTINCT去重后统计

SELECT 
    cus_id,
    prod_category AS prod_id,
    COUNT(*) AS count
FROM (
    -- 提取所有唯一的 cus_id、prod_category、agreement_id、type_id 组合
    SELECT DISTINCT 
        cus_id,
        prod_category,
        agreement_id,
        type_id
    FROM your_table_name -- 替换为你的实际表名
) AS unique_records
GROUP BY cus_id, prod_category
ORDER BY cus_id, prod_id;

方法二:使用GROUP BY去重后统计

如果你的SQL方言对DISTINCT和GROUP BY处理有差异,也可以用GROUP BY先去重:

SELECT 
    cus_id,
    prod_category AS prod_id,
    COUNT(*) AS count
FROM (
    -- 通过分组获取唯一组合
    SELECT 
        cus_id,
        prod_category,
        agreement_id,
        type_id
    FROM your_table_name -- 替换为你的实际表名
    GROUP BY cus_id, prod_category, agreement_id, type_id
) AS unique_records
GROUP BY cus_id, prod_category
ORDER BY cus_id, prod_id;

结果说明

以上两种方法都会先过滤掉重复的agreement_id + type_id组合,再按cus_id和prod_category分组计数,最终得到你期望的统计结果。

内容的提问来源于stack exchange,提问作者hjun

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 04:00:34