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

如何基于另一列的去重计数分组,筛选唯一团队数大于3的组

解决方法:筛选唯一团队数大于3的分组

没问题,咱们可以通过SQL的分组聚合+筛选来实现这个需求,具体思路和代码如下:

核心思路

先按GroupNumber对数据进行分组,统计每个分组里不重复的TeamName数量,再筛选出这个数量大于3的分组即可。

基础SQL语句

假设你的表名叫team_goals(记得替换成你实际的表名),执行以下语句就能得到符合条件的分组:

SELECT GroupNumber
FROM team_goals
GROUP BY GroupNumber
HAVING COUNT(DISTINCT TeamName) > 3;

代码解释

  • GROUP BY GroupNumber:将数据按分组编号进行聚合,把同一组的所有行归为一组
  • COUNT(DISTINCT TeamName):统计每个分组里唯一的团队名称数量,避免同一团队多次出现重复计数
  • HAVING COUNT(DISTINCT TeamName) > 3:对聚合后的结果进行筛选,只保留唯一团队数大于3的分组(这里HAVING是专门用来过滤聚合结果的,不能用WHERE替代)

扩展:同时查看唯一团队数

如果你想同时看到每个符合条件分组的具体唯一团队数量,可以调整查询语句:

SELECT GroupNumber, COUNT(DISTINCT TeamName) AS UniqueTeamCount
FROM team_goals
GROUP BY GroupNumber
HAVING COUNT(DISTINCT TeamName) > 3;

执行后会返回类似这样的结果:

GroupNumberUniqueTeamCount
24

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 03:55:11