sql >> Database >  >> RDS >> Mysql

MYSQL Database-query om de hoogste score te retourneren

Ik denk dat dit is wat je wilt, hierdoor krijg je de student met de hoogste score op elk onderwerp, als je een bepaald onderwerp wilt, kun je WHERE SubjectID=Subjects.SubjectID wijzigen naar 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)

Gemiddeld:

 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;

Hier is een werkende viool om de resultaten van de hoogste score en het gemiddelde te zien.



  1. Verzoeken zijn vastgelopen in ActiveRecord::QueryCache middleware

  2. Hoe MySQL-binlog te importeren dat INSERT's van een TIMESTAMP-veld met standaardwaarde CURRENT_TIMESTAMP bevat

  3. JSON-functies en -operators in SQLite (volledige lijst)

  4. Verschillende manieren om het schema en de gegevens van SQL Server-tabellen te vergelijken