Ich habe eine SQL-Abfrage, die Programm, Klasse und Jahr aus meiner Students Table greifen soll, gegeben zwei Spalten X und Y der Zahlen. Wenn zum Beispiel x = 3 und Y = 4, bedeutet dies, dass es eine Verbindung zwischen Schüler 3 und 4 gibt und ich wähle Programm, Klasse, Jahr von Schüler 4, um unseres Arguments willen.Ich kann Zeilen nicht einzeln ohne Gruppierung auswählen
Das Problem ist, wenn es zwei Zeilen, in denen X und Y gleich ist, zum Beispiel: Reihe 1: X = 3, Y = 4 Row 2: X = 3, Y = 4
(Weil es vielleicht zwei Verbindungen gibt), wählt SELECT nur Programm, Klasse und Jahr nur EINMAL, nicht zweimal. Ich möchte, dass diese Wiederholung einzeln ausgewählt wird, sodass meine Schleife später zweimal wiederholt wird.
Ich hoffe ich habe mich klar gemacht!
$SQL = "
SELECT Programme, Class, Year
FROM Students
WHERE Student_ID in (
SELECT X
FROM SearchStudent
WHERE Y= '$id'
)";
Versuchen Sie ein JOIN statt, es wird wahrscheinlich auch in den meisten Fällen schneller. – Uueerdo
mm ok, wie würde ich es strukturieren? – Nockingam
hat ein Beispiel als Antwort gepostet – Uueerdo