小编Ada*_*dam的帖子

SQL - 两个不同列的部分结果总和

好吧,那么,让我假装我有一个这样的表:

Name Rank Score
Adam 1    10
Adam 2    20
Adam 3    14
Jane 2    11
Jane 3    14
Jane 4    45
Rick 1    49
Rick 3    24
Rick 5    12
Run Code Online (Sandbox Code Playgroud)

我需要在单个表中生成一组结果,其中SUMs在一列中排名为1和2,在第二列中排名为3+.我可以将它作为两个单独的SQL语句来执行,如下所示:

SELECT Name, SUM(Score) AS Score1
FROM Table
WHERE Rank < 3
GROUP BY Name
Run Code Online (Sandbox Code Playgroud)

SELECT Name, SUM(Score) AS Score2
FROM Table
WHERE Rank > 2
GROUP BY Name
Run Code Online (Sandbox Code Playgroud)

但我想不出任何方法来生成一个导致单个表的SQL语句,可能如下所示:

Name Score1 Score2
Adam 30     14
Jane 11     59
Rick 49     36
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏.谢谢!

sql db2

2
推荐指数
1
解决办法
3287
查看次数

标签 统计

db2 ×1

sql ×1