Ich schreibe eine Webseite, die die Noten der Schüler in einem alten Notenbuchformat anzeigt, d.h. sie zeigt den Namen des Schülers an, dann seine Punktzahl für jede Aufgabe (in einer Zeile) und wiederholt dann eine Zeile pro Schüler. Meine Tabellen sind wie folgt aufgebaut (gekürzt auf die notwendigen Informationen):
Tabelle: Zuweisung
* Zuweisung_PK (Primärschlüssel)
* Zuweisung_Name
Tabelle: Studenten
* Student_PK (Primärschlüssel)
* Student_Name
Tabelle: StudentAssignment
* SA_PK (Primärschlüssel
* Schüler_FK (Schüler.Schüler_PK)
* Zuweisung_FK (Zuweisung.Zuweisung_PK)
* Punkte
Ich versuche, eine SELECT-Anweisung zu schreiben, die den Namen und die Punktzahl der Schüler für jede Aufgabe ausgibt. Das Problem, auf das ich stoße, ist, dass ich, wenn ich SELECT Score als Spalte verwende, nur die Punktzahl für eine Aufgabe erhalte, weil ich in meiner WHERE Assignment_FK = Assignment_PK nur eine Punktzahl für eine Spalte auswählen kann.
Ich bin ein ziemlicher Neuling auf dem Gebiet der relationalen Datenbanken und könnte wirklich etwas Hilfe gebrauchen, wie ich dieses Problem am besten angehen kann. Ein Vorschlag war, dass ich eine SELECT-Anweisung schreibe, um alle Schüler in einer Tabelle auszuwählen, dann eine foreach-Zeile in der Tabelle ausführe und die Noten auswähle und sie in die entsprechende Spalte eintrage. Dies scheint ein langsamer und unnötiger Prozess zu sein. Gibt es eine einfachere Möglichkeit, JOINS zu verwenden? Oder kann man ein besseres SELECT schreiben?