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

统计两列中值的匹配次数(分别统计):赛事结果表胜负及参赛次数统计

赛事选手胜负次数统计解决方案

嘿,这就帮你搞定这个赛事数据统计的需求!针对你给出的Results表,我们可以通过SQL的CTE(公共表表达式)和联合查询来轻松得到想要的统计结果,具体实现如下:

实现SQL代码

WITH win_counts AS (
    SELECT 胜者 AS 姓名, COUNT(*) AS 获胜次数
    FROM Results
    GROUP BY 胜者
),
loss_counts AS (
    SELECT 败者 AS 姓名, COUNT(*) AS 失败次数
    FROM Results
    GROUP BY 败者
)
SELECT
    COALESCE(w.姓名, l.姓名) AS 姓名,
    COALESCE(w.获胜次数, 0) AS 获胜次数,
    COALESCE(l.失败次数, 0) AS 失败次数,
    COALESCE(w.获胜次数, 0) + COALESCE(l.失败次数, 0) AS 参赛总次数
FROM win_counts w
FULL OUTER JOIN loss_counts l ON w.姓名 = l.姓名
ORDER BY 参赛总次数 DESC, 姓名;

代码说明

  • win_counts:这个CTE专门统计每个选手作为胜者的获胜次数,通过对胜者字段分组并计数得到。
  • loss_counts:这个CTE统计每个选手作为败者的失败次数,同理对败者字段分组计数。
  • FULL OUTER JOIN:用来合并两个统计结果,确保那些只有胜场或者只有败场的选手也能被纳入统计(比如Ellen和José只有胜场,没有败场)。
  • COALESCE函数:用来处理NULL值,把没有胜场或败场的选手对应次数填充为0,避免结果出现NULL。
  • 排序规则:最后按照参赛总次数降序排列,总次数相同的选手按姓名排序(让结果更规整)。

预期输出结果

姓名获胜次数失败次数参赛总次数
Roy134
Bob123
Joe213
Mary112
Ellen101
José101

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 09:27:38