ACCESS中能一个成绩总分排名,实现类似Excel中RANK函数的功能

时间:2022-07-21 07:54:24 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。
我有一个学生成绩的表,包含六个学生单科成绩的字段。比如语、数、外、政、史地。

现在想建一个查询,把上述各科成绩导入过来容易,问题是为它们总分和排名。

总分是可以用ACCESS中内置的公式实现的,但排名就不行了。它只有排序,一旦单科分数变了,它不能作出相应的变化。在这一点上,EXCEL就可以用RANK函数轻松解决。

不知能不能做到,如何才能做到。

谢谢你的支持。

可以,但有点麻烦。。一个简单的例子:

假设你有一个名字为基本成绩的表,表里有七个字段,分别为:名字、语、数、外、政、史、地。

建立一个名为"名次中间查询"的查询,这个查询的sql语句为:

SELECT [基本成绩]![]+[基本成绩]![]+[基本成绩]![]+[基本成绩]![]+[基本成绩]![]+[基本成绩]![] AS 总分 FROM 基本成绩

ORDER BY []![]+[基本]![]+[基本]![]+[基本成绩]![]+[基本]![]+[基本成绩]![] DESC;

最后建立一个名为名次查询的查询,sql语句为:

SELECT DCount("[总分]","名次中间查询","[总分]>" & [总分])+1 AS 名次, 基本成绩., 基本成绩., 基本成绩., 基本成绩., 基本成绩., 基本成绩., 基本成绩., []![]+[]![]+[]![]+[]![]+[]![]+[]![] AS 总分 FROM 基本成绩

ORDER BY []![]+[基本]![]+[基本]![]+[基本成绩]![]+[基本]![]+[基本成绩]![] DESC;

之后,你只要运行名次查询,就可以在结果里看到学生的名字、各科成绩、总分以及名次了。但这个查询是同分同名次的,就是说如果有两个同分的第一名就不会有第二名了直接数到第三名。。不知这样合不合你要求。

但老实说,如果不是经常要干同类的工作,我倒宁愿把基本成绩表里的东西全copyexcel里去搞,又快又省事。


本文来源:https://www.wddqw.com/doc/05142b75cc1755270622085e.html