Hi!
Tabelle A - Feld 'nr' (BigInt) mit Wert '1107190099' und andere Felder...
Tabelle B - Feld 'nr' (String) mit Wert '01107190099' und andere Felder...
Wenn ich jetzt einen LEFT JOIN anwende (select ... left join tabelleB on tabelleA.nr = tabelleB.nr) dann findet/verknüpft er mir den Datensatz, trotz der unterschiedlichen Werte. Wie kann ich das verhindern, nachdem das Kind schon in den Brunnen gefallen ist?
Der Intergerwert versucht den String auf seine Seite zu bekommen. Dann kann das DBMS beide nach Zahlen vergleichen und stellt Übereinstimmung fest. Ich denke, wenn du zuerst den Interwert nach String CASTest/CONVERTierst, sollte sich dieses Problem gelöst haben - oder auch möglicherweise durch ein anderes ersetzt haben. Denn der Typecast dürfte wirksam verhindern, dass zum Verknüpfen ein eventuell vorhandener Index herangezogen werden kann.
Lo!