undso: Inner oder Outer Join

Beitrag lesen

Hallo Forum,

hab leider wieder ein Query Problem. Folgende Konstellation:

Tabelle: Mitglieder

UserID Name Geschlecht Wohnort
1  Peter M   Stuttgart
2  Ida  W   Berlin
3  Udo  M   Frankfurt
4  Ela  W   Mainz

Nun gibt es eine Tabelle Freunde, wer mit wem befreundet ist: Buddys

Userid FreundID Notiz
1  2   NULL
2  1   NULL
3  2   NULL
2  3   NULL

Nun lese ich mit einem InnerJoin auf einer Seite die Buddys eines Users aus: Nehmen wir an Ida mit der UserID 4

select a.friend, b.name, b.geschlecht, b.wohnort from Mitglieder AS B LEFT OUTER JOIN on a.FreundID=B.UserID Buddys AS A where a.userid=2;

Klappt alles wunderbar. Ich erhalte:

1  Peter M Stuttgart
3 Udo  W Frankfurt

Nun will ich der Ida ermöglich, anstatt den Buddys manuele Kontakte hinzuzufügen. Leider auch in die gleiche Spalte. Das Problem: In die FreundID wird ein User eingefügt, von dem es keine Daten in der Tabelle "Mitglieder" gibt. Ist es da trotzdem möglich die Daten mit der Query oben auszulesen? Geschlecht und Wohnort ist dann nicht vorhanden. Da sollte der Inhalt dann einfach leer sein.

Die Erweiterte Tabelle "Buddys" würde dann zum Beispiel so aussehen, wobei ich das Feld "Notiz" oben nicht ausgelesen habe:

Userid FreundID Notiz
1  2   NULL
2  1   NULL
3  2   NULL
2  3   NULL
2  Karl  Mein Schatz

Die Ausgabe sollte dann so aussehen:

Klappt alles wunderbar. Ich erhalte:

1  Peter M Stuttgart
3 Udo  W Frankfurt

  • Karl - -

Überhaupt möglich?

Grüße