Vinzenz Mai: mySQL-JOIN: Entweder nur einmal, oder keinmal.

Beitrag lesen

Hallo,

Dazu gibts zwei Tabellen in die ich gerne joinen würde.

Ilja würde sagen: Joins sind böse ;-)

Mein Problem: Ich bin nicht gut genug in Joins. Gesucht ist folgendes Konstrukt:

Der Benutzer darf nur in einer der beiden gejointen Tabellen vorkommen, aber nicht in beiden gleichzeitig! Natürlich kann er auch in keiner von beiden vorkommen.

geht mit Joins, ist aber unschön.

Wie würde man sowas formulieren?

mit zwei Subselects:

Gib mir
    die Benutzer
aus der
    Tabelle 1
wobei nur die interessieren
    die nicht in der Liste der Benutzer aus Tabelle 2 enthalten sind
oder
    die nicht in der Liste der Benutzer aus Tabelle 3 enthalten sind

(kannst Du natürlich auch umgekehrt mit einer und-Verknüpfung formulieren).
Die Lösung mit Joins wäre bei weitem nicht so verständlich wie mein Pseudocode, der sich praktisch 1:1 in SQL umsetzen lässt.

Freundliche Grüße

Vinzenz