这是一个创建于 2909 天前的主题,其中的信息可能已经有所发展或是发生改变。
成绩表中有每个学生的考试数据,同一个课程可以考试多次,展示时以最高分数为准。
sql 语句如何查询到每个学生的每个课程的最高成绩,还要包括班级信息和课程信息。
数据表示例:
index name class course score
1 xiaoming A math 100
2 xiaoming A math 90
3 xiaosong B math 99
4 xiaosong B math 85
5 c A math 96
6 c A math 94
7 d A math 88
8 d A math 78
9 e A math 80
10 e A math 70
11 e A math 60
12 e A math 50
数据库查询:从考试分数表中查询出来所有同学的同一个课程的最高分数
查询结果是:1,5,7,9 行数据,要求把这记录全部拿出来,包括班级和课程信息
请问各位大声:
1、sql 语句如何编写?
2、如果用 django 的 orm 查询,要求结果是该表中的每个记录对象,该如何编写
第 1 条附言 2018 年 4 月 10 日 查询出来的结果应该是这样的:
index name class course score
1 xiaoming A math 100
3 xiaosong B math 99
5 c A math 96
7 d A math 88
9 e A math 80
6 条回复 2018-04-10 13:55:57 +08:00  | | 1 ebony0319 2018 年 4 月 10 日 via Android 子关联查询,大概就是这样,select * from A a where 1>=( select * from A where a.score>=score) 手机打的,很不方便,大概就是这样。 |
 | | 2 ebony0319 2018 年 4 月 10 日 via Android 错了,里面还要一个条件 学科=学科。 |
 | | 3 huba 2018 年 4 月 10 日 via Android 坐等正确答案 |
 | | 4 Chemist 2018 年 4 月 10 日 via iPhone 作业请自己完成 |
 | | 5 Molita 2018 年 4 月 10 日 via Android 作业 请独立完成 |
 | | 6 SbloodyS 2018 年 4 月 10 日 SELECT class, `name`, MAX(score)
FROM main.test_v2ex GROUP BY `name`,class |