Falsche Groß- und Kleinschreibung im Namen der Unterabfragespalte führt zu falschen Ergebnissen, aber zu keinem Fehler
Bei Verwendung von SQL Server Management Studio werden einige unerwünschte Ergebnisse angezeigt (scheint mir ein Fehler zu sein ..?)
Wenn ich (FIELD anstatt field für die other_table) benutze:
SELECT * FROM main_table WHERE field IN (SELECT FIELD FROM other_table)
Ich erhalte alle Ergebnisse von main_table.
Verwenden Sie den richtigen Fall:
SELECT * FROM main_table WHERE field IN (SELECT field FROM other_table)
Ich erhalte die erwarteten Ergebnisse, wenn das Feld in einem anderen Feld angezeigt wird.
Die Unterabfrage selbst ausführen:
SELECT FIELD FROM other_table
Ich erhalte einen ungültigen Spaltennamenfehler.
Sicherlich sollte ich diesen Fehler im ersten Fall bekommen?
Steht dies im Zusammenhang mit der Sortierung? Der DB ist eine binäre Kollatierung. Der Server unterscheidet jedoch nicht zwischen Groß- und Kleinschreibung. Mir scheint, die Serverkomponente sagt "Dieser Code ist in Ordnung" und die DB darf nicht sagen, dass das Feld der falsche Name ist.
Welche Möglichkeiten habe ich für eine Lösung?