【发布时间】:2021-10-24 23:17:24
【问题描述】:
我有两列,gain 和 bia。我可以使用以下代码得到一个总和和我的计算。
sum(gain) - sum(bia) AS 'TOT YAC',
但我还需要对另一列满足条件的 bia 列进行另一次计算 (series_end='Touchdown')。但我想在不更改下面的原始 SELECT 语句的情况下做到这一点。
SELECT possession_team AS Team, ball_carrier_receiver AS Player,
FROM plays WHERE run_pass='P' AND pass_result <>'S' AND pass_result <>'R'
GROUP BY possession_team, ball_carrier_receiver;
这就是我卡住的地方。从逻辑上讲,它会像下面这样,但我似乎无法在 MySQL 代码中使用任何东西。它不能是“else 1 then 0 end”的情况,因为我需要 bia 列的真实总和(值的范围可以从 -5 到 50)。
sum(bia if series_end='Touchdown') AS 'BIA TD',
【问题讨论】:
-
SUM(bia * (series_end='Touchdown')) AS 'BIA TD' -
这行得通!不知道如何将其标记为正确答案。
-
这是常见的、基础的、表达式的、“条件聚合”的缩写形式(搜索和研究)。
标签: mysql sql statistics