Hi,
ich habe eine Query, bei der ich unter einer best. Voraussetzung eine Ergebnissmenge erhalte, die Tulpels doppelt aufführt.
select
b.MID,
t.AN,
...
FROM
tabelle_b b
JOIN tabelle_t t ON b.ID = t.ID
JOIN tabelle_c c ON b.LID = c.KID
JOIN tabelle_m m ON b.MID = m.MID
JOIN tabelle_k k ON b.KID=k.KID
LEFT JOIN tabelle_f f on m.MID = f.MID
LEFT JOIN tabelle_a a on (b.LID = a.LID AND t.AN = a.AN )
WHERE
...
Wenn in dieser Query in tabelle_b ein Eintrag steht, zu dem KEIN Eintrag in tabelle_t gehört, aber glechzeitig auch ein Eintrag in tabelle_b steht, zu dem ein Eintrag in tabelle_t existiert, wird dieser doppelt aufgeführt.
Beispiel:
ID 5 in tabelle_b hat MID 10 aber keinen Eintrtag in tabelle_t
ID 50 in tabelle_b hat MID 10 und Eintrag t.ID = 20 in tabelle_t
Dann wird t.ID 20 doppelt aufgeführt mit allen sonstigen Werten, die ja für ID5 und ID50 ohnehin identisch sind.
Ich habe es mit
- DISTINCT
- LEFT JOIN
- RIGHT JOIN
versucht, das brachte aber nicht den gewünschten Erfolg.
Bernd