Hallo Dannis,
ich habe eine Tabelle mit folgender Struktur: ID | Name | MutterID (Standard 0) | Kreis
Ich möchte nun alle Personen aus dieser Tabelle aus einem bestimmt Kreis (2) abfragen. Die 'Kinder' werden leider ohne Kreis gespeichert.
Ich frage nun alle Einträge mit Kreis = 2 ab und möchte auch alle zugehörigen Kinder aus derselben Datenbank joinen. Kinder sind mit der MasterID (=ID) an Ihre Mutter gekoppelt.
wenn ich Dich richtig verstanden habe, möchtest Du in etwa das:
-- Alle Personen, denen Kreis 2 direkt zugeordnet sind
SELECT
ID,
Name,
MasterID,
Kreis
FROM
tabelle
WHERE
Kreis = 2
-- verbunden mit allen Personen, deren Mutter aus Kreis 2 ist
UNION
SELECT
ID,
Name,
MasterID,
Kreis
FROM
tabelle
WHERE -- wobei nur die Datensätze interessieren
MasterID IN ( -- deren MasterID
SELECT -- in der Auswahl der
t2.ID -- IDs vorkommt
FROM -- (d.h. deren Mutter aus Kreis 2 ist)
tabelle t2
WHERE -- die
Kreis = 2 -- direkt aus Kreis 2 sind
)
Statt fehlerhaften SQLs wäre es hilfreicher gewesen, ein paar Beispieldatensätze und das gewünschte Ergebnis vorzustellen, mit der Begründung warum das gewünschte Ergebnis so wäre.
Freundliche Grüße
Vinzenz