Bademeister: Problem mit Tabelle

Beitrag lesen

Hi Jost.

Ich habe nun das Problem das ich für die ich nur die Studenten angezeigt bekommen möchte die diese Prüfung noch nicht bestanden haben(note besser als 5). Ich kriege es leider nur hin indem ich nach note=5 abfrage. Leider tauchen dann Studenten auf die zwar eine 5 geschrieben haben, aber im 2.Versuch dann eine bessere Note z.B. 3,7 erreicht haben.

Du brauchst fuer Deine Ergebnismenge Informationen aller Datensaetze fuer die entsprechende Pruefung, willst aber nur eine Liste der Studenten (die jeweils ggf. mehrere Datensaetze haben). Also solltest Du die Datensaetze nach den Studenten, sprich, der Spalte 'name' gruppieren. Die Eigenschaft, die einen Studenten fuer das Auftauchen in Deiner Ergebnismenge qualifiziert, ist dann:

"Alle Noten des Studenten sind mindestens(?) 5.", bzw. etwas SQL-naeher:

"Das Minimum aller Noten des Studenten ist mindestens 5."

Die SQL-Uebersetzung davon bildet dann Deine HAVING-Klausel.

Und noch zwei Fragen aus Interesse zu Deinem Datenbank-Design:

1.: In einer Zeile steht eine Anzahl von Versuchen fuer die Pruefung (mitunter > 1) und auch ein Datum und eine Note. Hat das irgendeinen Sinn?

2.: Was sind pid und pruefungID? Wie eine Pruefung in Deiner Datenbank charaktrisiert ist, vertehe ich bisher nicht im geringsten.

Viele Gruesse,
der Bademeister