我有一张名为tbl_Generation
的表
我在该表中有多个列。重要的一个是RGenerate
,它是布尔值,该列中只包含0或1,EmpID(from tbl_Employee)
表格就像这样
RGenerate EmpCode
0 101
1 101
0 101
1 201
1 201
例如,EmpCode 101
总计数为1,EmpCode 201
为2
我想根据具有最高RGenerate的用户计算每个用户的等级
我正在使用SQL Server 2012。
我想在页面背后的代码上为特定用户排名 现在我有一个asp.net仪表板页面,用户将看到他的排名。
如何编写相应的SQL查询?
答案 0 :(得分:2)
使用窗口函数和强制转换编写一个SQL查询,为每个用户分配排名,然后将其显示在您的网页上
SELECT EmpCode,
row_number() over(order by sum(cast(RGenerate as int)) desc) rank
FROM tbl_Generation
GROUP BY EmpCode