Einzelnen Beitrag anzeigen

Jürgen Thomas

Registriert seit: 13. Jul 2006
Ort: Berlin
750 Beiträge
 
#3

Re: Verknüpfungen -> Verständnisfrage

  Alt 9. Jan 2007, 13:18
Für einfache Fälle:
SQL-Code:
SELECT
    Name,
    Vorname,
    PLZ,
    Ort
FROM Tabelle1
JOIN Tabelle2
  ON Tabelle1.OrtIndex = Tabelle2.OrtIndex
Für Fälle, in denen die Feldnamen übereinstimmen können:
SQL-Code:
SELECT
    a.Name,
    a.Vorname,
    p.PLZ,
    p.Ort
FROM Tabelle1 a
JOIN Tabelle2 p
  ON a.OrtIndex = p.OrtIndex
Es geht auch so:
SQL-Code:
SELECT
    a.Name,
    a.Vorname,
    p.PLZ,
    p.Ort
FROM Tabelle1 a, Tabelle2 p
WHERE a.OrtIndex = p.OrtIndex
Unabdingbar ist, dass der OrtIndex in der Adressen-Tabelle auch in der PLZ-Tabelle vorhanden ist. Schon aus Gründen der Geschwindigkeit ist es wichtig, dass auf P.OrtIndex ein eindeutiger Schlüssel liegt.

Achtung: Nur die Kombination PLZ + Ort ist eindeutig (genauer: das Feld ALORT der Post-Datenbank). Zu vielen PLZ gibt es mehrere Orte; es gibt viele Orte mit mehreren PLZ.

Gruß Jürgen
#D mit C# für NET, dazu Firebird
früher: Delphi 5 Pro, Delphi 2005 Pro mit C# (also NET 1.1)
Bitte nicht sauer sein, wenn ich mich bei Delphi-Schreibweisen verhaue; ich bin inzwischen an C# gewöhnt.
  Mit Zitat antworten Zitat