我有一个表:显示重复的最大值
+----------------+----------------+------------------+-------+
| Student_Id | Student_Name | Assessment_Type | Mark |
+----------------+----------------+------------------+-------+
| 300 | John | Assignment | 1 |
| 200 | Liz | Final | 2 |
| 300 | John | Mid-term | 3 |
| 100 | Sue | Mid-term | 4 |
| 200 | Liz | Project | 5 |
| 300 | John | Assignment | 6 |
| 200 | Liz | Final | 7 |
| 300 | John | Mid-term | 8 |
| 100 | Sue | Mid-term | 8 |
| 200 | Liz | Project | 9 |
+----------------+----------------+------------------+-------+
我想找到Assessment_Type分组的最大标志,如果有重复的,同时显示,所以在这种情况下:
+----------------+----------------+------------------+-------+
| Student_Id | Student_Name | Assessment_Type | Mark |
+----------------+----------------+------------------+-------+
| 300 | John | Assignment | 6 |
| 200 | Liz | Final | 7 |
| 300 | John | Mid-term | 8 |
| 100 | Sue | Mid-term | 8 |
| 200 | Liz | Project | 9 |
+----------------+----------------+------------------+-------+
我只显示其中之一:
SELECT Student_Id, Student_Name, Assessment_Type, max(mark) FROM STUDENT_ASSESSMENT group by Student_Id, Assessment_Type;
编辑:增加了更多的细节问题。
'GROUP BY Student_Id' – shmosel
对不起关于这个问题的困惑,在我原来的问题,我通过Assessment_Type应该组为好,我现在编辑的问题。 – gptt916