3

適切なタイトルが見つからないので、タイトルが誤解を招く可能性があります。しかし、ここに行きます。

私は3つのテーブルを持っています。

Students
student_id | name
1            Rhon

Subjects
subject_id | subject_name | student_id
1            Physics        1
2            Math           1

Grades
grade_id | student_id | subject_id | grade
1          1            1            90
2          1            2            89
3          1            2            88

私は次のようになりたいと思います:

student_id | student_name | subject_name | grades
1            Rhon           Physics        90
1            Rhon           Math           88,89

私の現在のクエリは次のとおりです。

SELECT students.student_id, subjects.subject_id, string_agg(grades.grade, ',')
FROM students
JOIN subjects ON students.student_id = subjects.student_id
JOIN grades ON subjects.subject_id = grades.subject_id;

クエリに何か問題がありますか? 何か不足していますか?エラーは、それstudent_idが GROUP BY 句にある必要があることを示していますが、私はそれを望んでいません。ありがとうございます。

4

1 に答える 1