求救,一定给分(200分)

  • 主题发起人 主题发起人 digitalmachine
  • 开始时间 开始时间
D

digitalmachine

Unregistered / Unconfirmed
GUEST, unregistred user!
一个学生成绩数据库,有学号、姓名、班级、年级、数学、语文、英语,
请问怎样从一个报表中打印出一个班的学生的 数学成绩、数学班名次、数学级名次、
语文成绩、语文班名次、语文级名次、英语成绩、英语班名次、英语级名次
总分班名次、总分级名次。
谢谢!
 
select id,name,class,grade,math,
(select count(*)+1 from tablename b where b.class=a.class and b.math=a.math and b.math>a.math)as mathclasscount,
(select count(*)+1 from tablename c where c.grade=a.grade and b.math=a.math and c.math>a.math)as mathgradecount,
........
from tablename a
where class=:class
 
楼上老兄的方法有效,我昨天才学的~
你去试试,我也去试试!
对了,你用的什么库?
 
这么简单的问题!大哥,拜托您动动脑子好不好!不要把解决问题希望都寄托在别人身上,
那样你学不到什么东西!
 
9494
应该怎么多想想才对啊!!
 
的确真的有很多问题在书上看不到,一个人不就是在不断的学习中进步的吗?
 
上面ugvanxk老兄好像写的有点错误,我写了一个
SELECT id, name, class, grade, math,
(SELECT COUNT(*) + 1
FROM T1 b
WHERE b.grade = a.grade AND b.class = a.class AND b.math > a.math)
AS mathclassindex,
(SELECT COUNT(*) + 1
FROM T1 c
WHERE c.grade = a.grade AND c.math > a.math) AS mathgradeindex
FROM T1 a where (a.grade=:Paramgrade) and (a.class=:ParamClass)
 
请不要用select....
 
还是有点问题
mathclassindex字段的值都为1,不知为什么?
 
有改動:
id:學號 name:姓名 class班級 grade年級 math數學
select id,name,class,grade,math,
(select count(*)+1 from tablename b where b.class=a.class and b.math=a.math and b.math>a.math) as mathclasscount,//班級名次
(select count(*)+1 from tablename c where c.grade=a.grade and c.math=a.math and c.math>a.math) as mathgradecount,//年級名次
........
from tablename a
where a.class=:class //賦參數值
group by a.id order by a.id //不要漏這句
 
The following works for maths section in SQL 7.0:
SELECT id, name, class, grade, maths
,(SELECT COUNT(*) + 1
FROM Table1 b
WHERE b.grade = a.grade AND
b.maths > a.maths) AS mathsGradeIndex
,(SELECT COUNT(*) + 1
FROM Table1 b
WHERE b.class = a.class AND
b.maths > a.maths) AS mathsClassIndex
FROM Table1 a
ORDER BY a.grade,a.class,maths DESC
 
问题还是不能解决,
如果用group by 则sql语句不能执行
各位大虾快帮帮我
 
Do you really need to use group by?
 
唉,本来想帮你解决的,但ourself同志已经回答的很彻底了,我看我也没有什么
说的啦,我只是建议一下你去学一下sql语言,毕竟以后作数据库的软件都要用到
的,哈哈,等稍微学了以后,也不会在问这类问题了。
 
你们考虑过这样查询所要消耗多少服务器资源没有?
谁能说一说吗?
请给一个最有效的在客户端实现的程序吧,
 
我用的是Pradox数据库,每个同学班级排名,和年级排名都是1
是Pradox数据库不支持,还是sql语句有错误,
请大家给指出。
 
看不懂你在说什么,没看到你的sql语句,谁知道错在哪阿
 
:)。不会。
 
多人接受答案了。
 
后退
顶部