作为一个例子,我创建了一个数据库数据有以下字段,
id,studentNo,class,mathsscore,mathposition,engscore,engposition,bioscore,bioposition,physcore,phyposition.
假设表格如下:
id | studentNo | Class | mathscore | mathposition
-------------------------------------------------
1 10 Junior 1 56 ?
2 11 Junior 1 55 ?
3 12 Junior 1 66 ?
4 13 Junior 1 34 ?
5 14 Junior 1 87 ?
6 15 Junior 2 54 ?
7 16 Junior 2 56 ?
8 17 Junior 2 55 ?
9 18 Junior 3 87 ?
10 19 Junior 3 77 ?
所以如何根据他们的类使用php来回显每个学生的位置,因为总和是在具有不同分支的同一个数据库中一起完成的
答案 0 :(得分:0)
使用相关性的一些棘手的查询。我只会告诉你数学,然后你可以考虑别人。这个想法是计算每个学生的数学成绩较低或相等的学生人数。如果我有30分,有15名学生得分<= 30,那么我在课堂上的位置是30 + 1 = 31(你可以在展示时这样做)
SELECT a.studentNo, (SELECT count(*) FROM students b WHERE b.mathscore <= a.mathscore AND b.class = a.class) as position FROM students a;
P.S 可能会很慢......