Klaus: Wie frage ich mehrere Tabellen zusammen ab?

Hallo,

ich habe eine Tabelle in der steht eine eindeutige Nummer, die aus dem PLZ-Gebiet und einer fortlaufenden Nummer zusammengesetzt ist, und der Typ, der kennzeichnet, ob es sich um einen Kunden, einen Interessenten, einen Lieferanten oder Sonstiges handelt.
Das erste Problem ist, das die Kunden, die Interessenten etc. jeweils in einer eigenen Tabelle stehen.
Das zweite Problem ist, dass in den Tabellen unterschiedliche Informationen stehen, also jede Tabelle hat eigene aber über identische Feld-Namen.

Wie baue ich die Abfrage sinnvollerweise so auf, dass ich für alle Nummern in einem bestimmten PLZ-Gebiet alle Personen erhalte, egal ob Kunde, Interessent, Lieferant oder Sonstiges?

Funktioniert sowas, oder bin ich da komplett auf dem Holzweg?

select a.*,k.*,l.*,i.*,s.* from adressen as a, kunden as k, lieferanten as l, interessenten as i, sonstiges as s where (a.nr = k.nr OR a.nr = l.nr OR a.nr = i.nr OR a.nr = s.nr) AND a.nr like '20%';

Klaus

  1. Wie baue ich die Abfrage sinnvollerweise so auf, dass ich für alle Nummern in einem bestimmten PLZ-Gebiet alle Personen erhalte, egal ob Kunde, Interessent, Lieferant oder Sonstiges?

    Funktioniert sowas, oder bin ich da komplett auf dem Holzweg?

    Nein das wird nicht funktionieren - du musst die Tabellen mit UNION (Unterscheidung zwischen ALL und DISTINCT beachten) verknüpfen und in allen Tabellen mit generierten Feldnamen (Alias) für einheitliche Spalten sorgen und ggf. leere Spalten einfügen (nur in der Abfrage natürlich).