【发布时间】:2018-03-19 13:32:26
【问题描述】:
假设我有一张这样的桌子:
S_id |ca1 |ca2 |exam
1 | 08 | 12 | 35
1 | 02 | 14 | 32
1 | 08 | 12 | 20
2 | 03 | 11 | 55
2 | 09 | 18 | 45
2 | 10 | 12 | 35
3 | 07 | 12 | 35
3 | 04 | 14 | 37
3 | 09 | 15 | 32
4 | 03 | 11 | 55
4 | 09 | 18 | 45
4 | 10 | 12 | 35
5 | 10 | 12 | 35
5 | 07 | 12 | 35
5 | 09 | 18 | 45
我想选择 S_id、total 并根据 sum(ca1+ca2+exam) 为每个学生分配一个排名,如下所示:
S_id |total|rank
1 | 158 | 5
2 | 198 | 1
3 | 165 | 4
4 | 198 | 1
5 | 183 | 3
如果总数相同,比如S_id 2 和S_id 4 排名为 1,我希望排名跳到 3。
感谢您的帮助。
【问题讨论】:
-
sqlite是否支持Rank()解析函数 -
SQLite 不支持 Rank() 但我希望 Rank 列作为别名