【发布时间】:2012-12-31 20:30:02
【问题描述】:
我有一个标记表,例如:
ID STUDENT_ID Branch_id Class_id Exam_id Subject_id Numbers Date 1 653 5 1 1 8 60 2012-01-01 2 653 5 1 1 9 40 2012-01-01 3 653 5 1 1 10 80 2012-01-01 4 653 5 1 1 11 50 2012-01-01 5 653 5 1 1 12 65 2012-01-01 6 653 5 1 1 13 33 2012-01-01 7 653 5 1 1 15 86 2012-01-01 8 222 5 1 1 8 100 2012-01-01 9 222 5 1 1 9 80 2012-01-01 10 222 5 1 1 10 92 2012-01-01 11 222 5 1 1 11 50 2012-01-01 12 222 5 1 1 12 65 2012-01-01 13 222 5 1 1 13 33 2012-01-01 7 222 5 1 1 15 86 2012-01-01我想获得排名我得到了这个question的答案
此外,当我获取所有类结果时,我使用数据透视查询:
SELECT stu_id, sum(numbers) AS total, branch_id, depart_id, class_id,
SUM( IF( subject_id =1, numbers, 0 ) ) AS MAth,
SUM( IF( subject_id =2, numbers, 0 ) ) AS Eng,
SUM( IF( subject_id =3, numbers, 0 ) ) AS Science
FROM marksheet where branch_id = 1 AND depart_id = 1
AND class_id = 1 GROUP BY stu_id ORDER BY total DESC
我想在我的班级查询(枢轴查询)中获得排名?我想数一下有多少学生在第一名,多少名在第二和第三名?
所需数据样本:
ID 姓名 数学 英语 科学 总百分比 位置 排名有人帮忙吗?
【问题讨论】:
-
您能否将其设为子查询并根据此结果执行类似的分组?
-
我无法理解我想要的每一个可能的答案
-
数字是结果吗?
-
如果这两种可能之一,请回答?使用枢轴查询或计数排名获取排名?