mysql - 在 MYSQL 中查找 2 个不同列中特定 id 的最大值(总和)

标签 mysql sql

我有一个看起来像 enter image description here 的表格

我需要特定 team_id 的目标总和 例如:
如果 team_id 16 分别进了第 6 球和第 2 球,则另一个新列 sum_goal 中的总和将为 8

我无法继续。请帮忙。

我尝试过的查询是:

选择 ( match_id, Sum(目标) 来自 ( 从 match_result_updation 中选择 team1_id ID、team1_goal 目标 联合所有 从 match_result_updation 中选择 team2_id ID、team2_goal 目标 )

as A)

来自

(选择 c.tournament_id , g.*
来自 team_tropies d 内部联接 锦标赛_比赛 e 在 e.tournament_id = d.tournament_id 内部联接 比赛安排c 在 c.tournament_id = e.tournament_id 内部联接 匹配 f 在 f.match_id = c.id 内部联接 匹配结果更新g 在 g.match_id = f.id 在哪里 f.match_type = '锦标赛' 和 d.tournament_id = 1) 作为 p 按 match_id 分组

从第二次选择到 id = 1,我得到了附件图片中的输出,但我无法找到每个 team_id 的目标总和。 此外,如果 teamid 16 或 17,则 team1 或 team2 相应的目标总和将被计算。

最佳答案

我的第一个想法是将它们放入类似的列中,然后求和。 编辑任何 SQL 引擎

Select ID, Sum(Goal) From
    (
    Select Team1_ID ID, Team1_Goal Goal From Table
    Union All
    Select Team2_ID ID, Team2_Goal Goal From Table
    ) A
Group By ID

ps 如果表设计标准化,则不需要这种解决方法。

关于mysql - 在 MYSQL 中查找 2 个不同列中特定 id 的最大值(总和),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42438264/

相关文章:

mysql - 使用第三方 API 更新 Google Cloud SQL 中的表

sql - MYSQL 对同一类别进行多项选择?

mysql - Eloquent 模型未按正确的顺序连接表

MySQL ORDER BY 然后 GROUP By

php - MySQL 插入行,重复 : add suffix and re-insert

php - 尝试获取非对象的属性/调用 bool 值上的成员函数bind_param()

SQL - 将逗号分隔的字符串转换为单独的行后更新表

MySQL 向表中插入一组值

java - Hibernate标准如何获取具有最大列值的行

MySQL 添加 COUNT( ) 值