微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用Access SQL执行分组排名

如何按部门分组的#客户(包括关系)对销售人员进行排名?

例如,给定此表,我想在右侧创建Rank列.我应该如何在Access中执行此操作?

SalesPerson Dept #Customers Rank
Bill        DeptA     20    1
Ted         DeptA     30    2
Jane        DeptA     40    3
Bill        DeptB     50    1
Mary        DeptB     60    2

我已经知道如何使用这个sql代码进行简单的排名.但我不知道如何重做这个来接受分组.

Select Count(*) from [Tbl] Where [#Customers] <  [Tblx]![#Customers] )+1

此外,使用sql Server的Rank()函数有很多答案,但我需要在Access中执行此操作.建议好吗?

解决方法

SELECT *,(select count(*) from tbl as tbl2 where
tbl.customers > tbl2.customers and tbl.dept = tbl2.dept) + 1 as rank from tbl

只需将dept字段添加到子查询中……

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐