Einzelnen Beitrag anzeigen

VizeTE

Registriert seit: 31. Dez 2002
178 Beiträge
 
Delphi 5 Enterprise
 
#1

SQL-Join um nicht zugeordnete Elemente zu finden

  Alt 3. Mai 2005, 16:51
Datenbank: Interbase • Version: 4.5 • Zugriff über: BDE
Hi,

ich habe 2 Tabellen und benötige eine Abfrage, die mir alle Datensätze in Tabelle a ausgibt die nicht in Tabelle b sind und die mir alle Datensätze aus Tabelle b ausgibt die nicht in Tabelle a sind. (über Primärschlüssel)

Folgender Join zeigt mir alle Datensätze aus beiden Tabellen. Datensätze die nicht zugeordnet sind erkennt man daran, daß eines der beiden Felder leer bleibt.
SQL-Code:
SELECT a.Id AS A, b.Id AS B
FROM TabelleA a
FULL OUTER JOIN TabelleB b ON b.Id = a.Id
Ich möchte als Ergebnismenge gern die Datensätze erhalten, bei denen ein Feld leer ist. Daher habe ich folgende Anweisung probiert
SQL-Code:
SELECT a.Id AS A, b.Id AS B
FROM TabelleA a
FULL OUTER JOIN TabelleB b ON b.Id = a.Id
WHERE a.Id IS NULL OR b.Id IS NULL
Leider gibt diese Anweisung nicht das gewünschte Ergebnis zurück. Hier bekomme ich alle Datensätze aus a und die entsprechenden Felder aus b sind leer und daran angehangen alle Datenstätze aus b und die entsprechenden Felder aus a sind leer.

Ich hoffe ihr versteht mein Problem.

thx - VizeTE
  Mit Zitat antworten Zitat