Ich führe eine SQL-Abfrage aus, um Ergebnisse mit dem Spaltenanwendungsstatus zu erhalten, die nicht S sind, um zu sagen, welche Position noch offen ist. Es gibt 3 Bewerbungsstatus U = Erfolglos, O = fortlaufend und S = erfolgreich. Das funktioniert gut. Unten ist der Code, den ich verwende.MySQL ignoriert bestimmte Zeilen?
SELECT DISTINCT position.position_ID, Title, EmployerName, Industry
FROM position
JOIN application ON position.position_id = application.position_id
JOIN employer ON position.employer_id = employer.employer_id
WHERE applicationstatus != 'S'
Das Problem, das ich bin vor mit dem obigen Abfrage-Code ist, nehmen sie an, position_ID 3212 hat drei Anträge, mit einer erfolgreichen Anwendung; Ich bekomme 2 Ergebnisse für die genannte Position (ohne den erfolgreichen) so.
Gibt es eine Möglichkeit, es zu filtern, so dass, wenn eine Position hat bereits eine erfolgreiche Anwendung, dann werden die Zeilen mit der gleichen Position ID wird ignoriert?
Ihre Abfrage wird solche Duplikate ignorieren, da sie die Spalte 'applicationstatus' in' SELECT' nicht enthält. – Andrew
Eigentlich nicht, ich habe den Anwendungsstatus nachher eingefügt, um das Lesen zu erleichtern. PositionID 3212 wird auch ohne den Anwendungsstatus angezeigt. Felix 'Rat, Exist zu benutzen, hat funktioniert. – ilovetaufu