MySQL组连续最大值

时间:2015-11-18 16:43:31

标签: mysql

  

我需要一个SQL查询,它会给出学生姓名主题,   标记最高

表格

EXEC sp_mine @arg1 = @P1  

期望的结果

ID    StudentName    Subject    Marks
1     A              English    50
2     B              English    40 
3     C              English    60
4     D              Science    10
5     E              Science    30
6     F              Science    20

1 个答案:

答案 0 :(得分:2)

你可以做自我加入。 像这样的东西。 这将打印出最高分的学生。

SELECT table_name.StudentName,table_name.Subject
FROM
table_name INNER JOIN 
(SELECT `Subject`,MAX(`Marks`) AS Marks FROM table_name GROUP by `Subject`) T
ON  table_name.Marks=T.Marks AND table_name.`Subject` = T.`Subject`

希望这有帮助。