Ich muss eine relativ leicht zu erklärende, aber (angesichts meiner etwas eingeschränkten Fähigkeiten) schwer zu schreibende SQL-Abfrage durchführen.
Nehmen wir an, wir haben eine ähnliche Tabelle wie diese:
%Vor% Beachten Sie, dass exam_no
und date
nicht notwendigerweise so zusammenhängen, wie man es von dem von mir gewählten Beispiel erwarten würde.
Die Abfrage, die ich jetzt ausführen muss, ist wie folgt:
exam_no
= 3) finden Sie alle fehlgeschlagenen Schüler ( John Doe
, Ryan Smith
und Mary Lee
). Die resultierende Tabelle sollte etwa so aussehen:
%Vor%Wie kann ich eine solche Abfrage durchführen?
Danke für Ihre Zeit.
Sie können die Tatsache ausnutzen, dass jemand, der die letzte Prüfung bestanden hat, seit dem letzten bestandenen Test keine Prüfung bestanden hat. Daher reduziert sich das Problem auf die Feststellung der ersten seit dem letzten bestandenen Prüfung:
%Vor%Sehen Sie es auf sqlfiddle .
Die Bedingung, nach der du fragst, ist gut für nichts, du kannst es ohne es tun. Hier ist das Arbeitsbeispiel.
%Vor%Dies erzeugt dieses Ergebnis
%Vor%