首页 > 解决方案 > SQL执行多记录,多列加法返回单个数字

问题描述

我只是想知道是否有人可以帮助我对我正在运行的足球预测程序进行 SQL 查询..我想total为我的数据库中的每个用户添加并返回当前分数..正如您从下面的示例中看到的那样每周,每个用户都会获得一个分数和奖金...在下面的示例中我有 2 个用户 ID(65 和 52)...我为每个用户包含了 3 周的预测...查看第一个用户(65 ) ..在 3 周内,他获得了 8,7 和 8 的分数 ..plus 在这 3 周内获得了 1 个奖励积分 ...所以我想找到一个查询,它将为特定用户添加所有这些 ..在用户 ID 为 65 的情况下,返回值为24(8+7+8+1 )。...我一直在努力找出如何最好地完成这项工作...任何帮助或指导将不胜感激

userid,weekid,score,bonus
65, 1, 8, 0
65, 2, 7, 0
65, 3, 8, 1
...
52, 1, 9, 0
52, 2, 7, 1
52, 3, 8, 1

标签: sql

解决方案


您的查询很好:

select userid, sum(score + bonus) from t group by userid;

结果:

userid  sum(score + bonus) 
------- ------------------ 
52      26                 
65      24                 

请参阅DB Fiddle上的运行示例。


推荐阅读