dedlfix: knifflige Verknüpfungsaufgabe - leider ohne Subselects

Beitrag lesen

Moin!

Pro Person und ConnectionType gibt es höchstens einen Datensatz (das wird durch eine entsprechende Bedingung sichergestellt).

Dann ist deine gesamte Mehrtabellenchose leider viel zu aufwendig, denn die Daten würden dann exakt in EINE Tabelle passen - naja, zumindest dann, wenn nicht ständig neue ConnectionTypes hinzukommen. Der Witz deiner Aufteilung ist doch gerade, dass man auf diese Weise für eine Person beliebig viele Telefonnummern speichern könnte.

Genauso ist es.
Speziell für diese Abfrage ist jedoch nur die Ausgabe der primären Telefonnummer, Fax, ... gewünscht. (Es gibt dazu in Connections u.a. noch ein Feld IsPrimary, das, durch Programmlogik sichergestellt, pro ConnectionType und Person nur einmal 1/true enthält.)

Das klappt soweit, jedoch gibt es keine Datensätze, wenn die Person beispielsweise kein Fax hat (Person3).

Wann immer es aufgrund von fehlenden Datensätzen zu NULL-Eintragungen kommen muß, sollte man die ganze Bandbreite von JOINs durchtesten. OUTER JOIN beispielsweise.

Ein LEFT JOIN ist doch ein LEFT OUTER JOIN oder nicht?
Wenn ich ConnectionTypes auch LEFT JOINe kommen falsche Verknüpfungen raus, da stehen dann alle ConnectionTypes unter allen Ergebnisfeldern. :-(

dedlfix