sql >> データベース >  >> RDS >> Mysql

最高スコアを返すMYSQLデータベースクエリ

    これはあなたが望むものだと思います。これにより、各科目で最高のスコアを持つ学生が得られます。特定の科目が必要な場合は、WHERE SubjectID=Subjects.SubjectIDを変更できます。 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)
    

    平均:

     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;
    

    これが動作中のフィドル です。 最高のスコアと平均の結果を確認します。



    1. Forループを使用してOracleでカーソルからデータをフェッチする方法

    2. ProfessionalSSRSレポートのストアドプロシージャの書き方

    3. 内部結合を使用して、テーブル内の特定のレコードと関連するイベントの間の間隔を決定する

    4. PostgreSQLが特定のIDの最新のエントリを選択