sql 成绩查询名次

E线时空 2007-10-12 09:28:25
我有一个表SumScoreView
ID realname totalnum
4536 14 陈献忠 95.850000
4529 14 黄晓峰 94.850000
4535 14 付建军 92.450000
4537 14 徐子飞 89.050000
4538 14 陈晓峰 90.450000
4532 14 赵列峰 90.300000
4539 14 许伟忠 89.850000
4540 14 陈忠华 89.250000
4541 14 吴兰宁 88.650000
4533 14 王晋飞 88.200000
4542 14 张伟 88.050000
4543 14 张欢军 87.450000
4544 14 吴雪峰 86.850000

我要得结果,输入realname 例如
徐子飞,返回6 第6名 陈献中,返回1 第一名
怎么才得到名次,
在线等sql语句,不用挺入表 方法来做,就用一个sql语句完成。可以是存储过程。
...全文
112 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
use test/*一个项目涉及到的50个Sql语句问题及描述:--1.学生表Student(S#,Sname,Sage,Ssex) --S# 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别--2.课程表 Course(C#,Cname,T#) --C# --课程编号,Cname 课程名称,T# 教师编号--3.教师表 Teacher(T#,Tname) --T# 教师编号,Tname 教师姓名--4.成绩表 SC(S#,C#,score) --S# 学生编号,C# 课程编号,score 分数select * from Studentselect * from Courseselect * from Teacherselect * from SC*/--创建测试数据create table Student(S# varchar(10),Sname nvarchar(10),Sage datetime,Ssex nvarchar(10))insert into Student values('01' , N'赵雷' , '1990-01-01' , N'男')insert into Student values('02' , N'钱电' , '1990-12-21' , N'男')insert into Student values('03' , N'孙风' , '1990-05-20' , N'男')insert into Student values('04' , N'李云' , '1990-08-06' , N'男')insert into Student values('05' , N'周梅' , '1991-12-01' , N'女')insert into Student values('06' , N'吴兰' , '1992-03-01' , N'女')insert into Student values('07' , N'郑竹' , '1989-07-01' , N'女')insert into Student values('08' , N'王菊' , '1990-01-20' , N'女')create table Course(C# varchar(10),Cname nvarchar(10),T# varchar(10))insert into Course values('01' , N'语文' , '02')insert into Course values('02' , N'数学' , '01')insert into Course values('03' , N'英语' , '03')create table Teacher(T# varchar(10),Tname nvarchar(10))insert into Teacher values('01' , N'张三')insert into Teacher values('02' , N'李四')insert into Teacher values('03' , N'王五')create table SC(S# varchar(10),C# varchar(10),score decimal(18,1))insert into SC values('01' , '01' , 80)insert into SC values('01' , '02' , 90)insert into SC values('01' , '03' , 99)insert into SC values('02' , '01' , 70)insert into SC values('02' , '02' , 60)insert into SC values('02' , '03' , 80)insert into SC values('03' , '01' , 80)insert into SC values('03' , '02' , 80)insert into SC values('03' , '03' , 80)insert into SC values('04' , '01' , 50)insert into SC values('04' , '02' , 30)insert into SC values('04' , '03' , 20)insert into SC values('05' , '01' , 76)insert into SC values('05' , '02' , 87)insert into SC values('06' , '01' , 31)insert into SC values('06' , '03' ,
1、可以设置,修改,增加学期信息,例如:2007年上学期,但是您必须设置一个默认学期为当前学期; 2、可以设置,修改,增加院系信息,如果是小学中学和高中不分院系,可以直接默认为本部,这样班级都是隶属于一个院系(本部)的。 3、可以设置,修改,增加教师信息,也可以批量增加教师信息,批量增加的教师姓名都是教师编号,可以教师登录后台后自己修改姓名等信息 4、可以设置,修改,增加班级信息,但是班级必须隶属于某个院系,有班级后才可以设置学生和课程。 5、可以设置,修改,增加学生信息,也可以批量增加学生信息,批量增加的学生姓名都是学生编号,可以学生登录后台后自己修改姓名等信息,学生增加的时候必须选择相关的班级。 6、可以设置,修改,增加课程信息,包括课程的开课教师,开课课时,开课班级等信息,此功能能配合课程表生成教师和班级课程表。 7、登录日志可以查看教师,学生,管理员的登录情况。 8、数据维护可以备份数据库,也可以直接操作SQL语句(不建议使用),这样数据可以更容易备份,系统更安全。 9、学生可以前台查询自己本学期的课程的成绩信息; 10、可以自动计算一个班级的所有学生成绩的整体排名和名次信息; 11、提供成绩的快速输入功能,批量给成绩,提供成绩的计算规则设置; 例如:(平时成绩*10%+作业成绩*10%+期中成绩*20%+期末成绩*60%=总分) 12、教师可以通过成绩排序来排布本课程的学生成绩的高低名次 13、提供成绩分析功能,可以查看某个课程成绩的分数分配比例 例如:开课人数30人 分析时间 2008-7-28 4:04:25 总分 2037 分 平均分 67.9 分 最高分 85 分 最低分 35 分 均分以上人数 29 人 均分以下人数 1 人 14、其它功能用户可以考用户手册; 15、教师可以查看本学期开设的课程,通过成绩管理功能进入学生成绩的录入功能; 16、教师可以通过成绩分析功能,分析课程的优秀,及格等比例的信息 17、教师还可以通过成绩汇总功能,对一个班级开设的全部课程进行总体的分析,计算全体课程的总分,名次等信息。 不在需要传统的计算器来完成 18、可以通过导出到EXCEL功能导出数据到您的机器,通过EXCEL来打印成绩数据,管理,数据保存更方便。

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧