选择基于列值运行总排名

时间:2016-07-01 12:36:20

标签: sql

我在为以下场景分配等级时遇到问题。在我的场景中,根据Cnt字段计算运行总数。

我的sql查询应返回如下输出的Rank值。每页它应该只接受40行,所以我指定的排名只包含40个记录。如果跑完总数40,则应该改变等级。对于每个计数40,它应该改变等级值。

如果我能让sql查询返回值

,那将会很有帮助
select f1,f2,sum(f2) over(order by f1) runnign_total
from [dbo].[Sheet1$]

输出:

ID      cnt     Running Total   Rank
1       4       4               1
2       5       9               1
3       4       13              1
4       4       17              1
5       4       21              1
6       5       26              1
7       4       30              1
8       4       34              1
9       4       38              1
10      4       42              2
11      4       46              2
12      4       50              2
13      4       54              2
14      4       58              2
15      4       62              2
16      4       66              2
17      4       70              2
18      4       74              2
19      4       78              2
20      4       82              3
21      4       86              3
22      4       90              3

enter image description here

1 个答案:

答案 0 :(得分:1)

log4j-over-slf4j-1.7.16.jar
logback-classic-1.1.5.jar
logback-core-1.1.5.jar
log4j-api-2.4.1.jar
log4j-core-2.4.1.jar
jcl-over-slf4j-1.7.16.jar
jul-to-slf4j-1.7.16.jar
slf4j-api-1.7.16.jar