【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《ACCESS中能一个成绩总分排名,实现类似Excel中RANK函数的功能》,欢迎阅读!
我有一个学生成绩的表,包含六个学生单科成绩的字段。比如语、数、外、政、史地。
现在想建一个查询,把上述各科成绩导入过来容易,问题是为它们总分和排名。
总分是可以用ACCESS中内置的公式实现的,但排名就不行了。它只有排序,一旦单科分数变了,它不能作出相应的变化。在这一点上,EXCEL就可以用RANK函数轻松解决。
不知能不能做到,如何才能做到。
谢谢你的支持。
可以,但有点麻烦。。。。一个简单的例子:
假设你有一个名字为“基本成绩”的表,表里有七个字段,分别为:名字、语、数、外、政、史、地。
建立一个名为"名次中间查询"的查询,这个查询的sql语句为:
SELECT [基本成绩]![语]+[基本成绩]![数]+[基本成绩]![外]+[基本成绩]![政]+[基本成绩]![史]+[基本成绩]![地] AS 总分 FROM 基本成绩
ORDER BY [基本成绩]![语]+[基本成绩]![数]+[基本成绩]![外]+[基本成绩]![政]+[基本成绩]![史]+[基本成绩]![地] DESC;
最后建立一个名为“名次查询”的查询,sql语句为:
SELECT DCount("[总分]","名次中间查询","[总分]>" & [总分])+1 AS 名次, 基本成绩.名字, 基本成绩.语, 基本成绩.数, 基本成绩.外, 基本成绩.政, 基本成绩.史, 基本成绩.地, [基本成绩]![语]+[基本成绩]![数]+[基本成绩]![外]+[基本成绩]![政]+[基本成绩]![史]+[基本成绩]![地] AS 总分 FROM 基本成绩
ORDER BY [基本成绩]![语]+[基本成绩]![数]+[基本成绩]![外]+[基本成绩]![政]+[基本成绩]![史]+[基本成绩]![地] DESC;
之后,你只要运行名次查询,就可以在结果里看到学生的名字、各科成绩、总分以及名次了。但这个查询是同分同名次的,就是说如果有两个同分的第一名就不会有第二名了直接数到第三名。。。不知这样合不合你要求。。。
但老实说,如果不是经常要干同类的工作,我倒宁愿把基本成绩表里的东西全copy到excel里去搞,又快又省事。。。。
本文来源:https://www.wddqxz.cn/05142b75cc1755270622085e.html