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

如何在PostgreSQL中查询两列非唯一组合并统计其出现次数

PostgreSQL查询两列重复组合方案

直接套用以下SQL模板即可满足需求,替换对应占位符为你的实际表、列名:

SELECT 
    col_a AS "col A",
    col_b AS "col B",
    COUNT(*) AS count
FROM 
    your_table_name
GROUP BY 
    col_a, col_b
HAVING 
    COUNT(*) > 1
-- 可选:按出现次数倒序排序,方便查看高频组合
ORDER BY count DESC;

逻辑说明

  • 用GROUP BY对两列的组合做分组,所有相同的col_a+col_b取值会被归为同一组
  • COUNT(*)统计每个分组的总出现次数
  • HAVING子句会过滤掉出现次数等于1的分组,仅保留重复出现的组合
  • 列别名"col A"/"col B"用于匹配你给出的示例输出格式,不需要自定义列名可直接删除别名部分

注意:如果查询列允许NULL值,PostgreSQL默认会将多个NULL判定为相同值计入同一分组;如果业务逻辑中NULL需要视为不同值,可将分组条件修改为GROUP BY col_a, col_b, (col_a IS NULL), (col_b IS NULL)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 16:06:04