Tôi nghĩ đây là những gì bạn muốn, điều này sẽ giúp bạn trở thành sinh viên có điểm cao nhất cho mỗi môn học, nếu bạn muốn một môn học cụ thể, bạn có thể thay đổi WHERE SubjectID=Subjects.SubjectID
tới WHERE SubjectID=particular_subject_id
SELECT Student.FirstName, Subjects.SubjectName, Grade.Grade, Subjects.SubjectID FROM
Student INNER JOIN Grade ON Grade.StudentID=Student.StudentID
INNER JOIN Subjects ON Grade.SubjectID=Subjects.SubjectID WHERE Grade.Grade=
(SELECT MAX(Grade) FROM Grade WHERE SubjectID=Subjects.SubjectID)
Đối với mức trung bình:
SELECT Subjects.SubjectName, AVG(Grade.Grade), Grade.ClassID, Subjects.SubjectID
FROM Grade INNER JOIN Subjects ON Grade.SubjectID=Subjects.SubjectID
GROUP BY Grade.ClassID, Grade.SubjectID;
Đây là fiddle đang hoạt động để xem kết quả của điểm cao nhất và điểm trung bình.