Ich erhalte die folgende Fehlermeldung;Unterabfrage hat mehr als 1 Wert zurückgegeben, Fehler
Die Unterabfrage ergab mehr als 1 Wert. Dies ist nicht zulässig, wenn die Unterabfrage folgt =,! =, <, < =,>,> = oder wenn die Unterabfrage als Ausdruck verwendet wird.
Der Abschnitt des Codes, mit dem ich Probleme habe, ist in meiner Select-Anweisung;
Momentan funktioniert es, wenn die Person nur einen Datensatz in der Testtemp-Tabelle hat, aber auseinanderfällt, wenn es zwei gibt. Ich weiß, dass ich Top 1 verwenden könnte, um es zu begrenzen, aber das ist nicht das, was ich will. L
stammt aus der Hauptauswahlanweisung.
Ok, so dass die temporäre Tabelle hat folgende Daten:
ID startdate
1 2014-10-02
1 2014-11-02
2 2014-11-02
Mit dem TOP 1 in meinem Code erhalte ich die Ergebnisse unter:
ID ~Other Stuff~ SC
1 ~~~~~~~~~~~~~ 1
2 ~~~~~~~~~~~~~ 1
Aber was ich will zurückgegeben werden soll:
ID ~Other Stuff~ SC
1 ~~~~~~~~~~~~~ 2
2 ~~~~~~~~~~~~~ 1
Wie kann ich meinen Code ändern, um dies zu erreichen?
Danke.
Um eine gute Antwort zu erhalten, müssen Sie immer noch die "main" 'from'-Klausel anzeigen, anstatt nur die Unterabfrage. Konzeptuell möchten Sie die 'group by' in der Unterabfrage loswerden und die' where' -Klausel verwenden, um sie im wesentlichen mit der Hauptabfrage mit einer 'where sch.id = main.id'-Zeile zu verbinden. – tarheel