SQL执行多记录、多列相加以返回单个数字



我只是想知道是否有人能帮我为我运行的足球预测程序提供SQL查询。。我想将数据库中每个用户的当前total分数相加并返回。。正如你从下面的例子中看到的,在每一周,每个用户都会得到一个分数和奖金。。。在下面的示例中,我有两个用户ID(65和52(。。。我为每个用户提供了3周的预测。。。查看第一个用户(65(。。在过去的三周里,他的得分分别为8,7和8。。plus在这3周内获得1点奖励积分。。。所以我想找到一个查询,为特定的用户添加所有这些。。在userID 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

您的查询很好:

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

结果:

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

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

最新更新