Kalle_B: JOIN - Problem (Original)

Beitrag lesen

Hallo, Rouven,

vielleicht ist mein Anliegen doch nicht richtig rübergekommen. Ich poste mal das Original- Ergebnis:

3 98754 4208 Adam Opel GmbH 11205 4207 FPM: Aktuelle Herausforderungen und Trends
3 98754 4208 Adam Opel GmbH 11208 4204 FPM: Aktuelle Herausforderungen und Trends
3 98754 4208 Adam Opel GmbH 11234 4206 FPM: Aktuelle Herausforderungen und Trends
3 98754 4208 Adam Opel GmbH 11236 4205 FPM: Aktuelle Herausforderungen und Trends
3 98754 4208 Adam Opel GmbH 11238 4203 FPM: Aktuelle Herausforderungen und Trends

Hier ist zu sehen, dass person_id 4208 einen Gesprächstermin bei Opel hat, seine 5 Kollegen aber im Workshop FPM: Aktuelle ... sitzen. Ich brauche 6 Ergebniszeilen, nicht 5.

Mein Wunsch- Ergebnis wäre dieses:

3 98754 4208 Adam Opel GmbH NULL  NULL NULL
3 NULL  NULL NULL     11205 4207 FPM: Aktuelle Herausforderungen und Trends
3 NULL  NULL NULL     11208 4204 FPM: Aktuelle Herausforderungen und Trends
3 NULL  NULL NULL     11234 4206 FPM: Aktuelle Herausforderungen und Trends
3 NULL  NULL NULL     11236 4205 FPM: Aktuelle Herausforderungen und Trends
3 NULL  NULL NULL     11238 4203 FPM: Aktuelle Herausforderungen und Trends

Hier das SQL:

SELECT
 slt1.nr             slot_nr

,kon1.id             kon_id
,kon1.besucher_id
,per1.bezeichnung    aussteller_name

,evb1.id             evb_id
,evb1.adress_id      evb_adr_id
,evt1.name           event_name

FROM      tm_slots slt1

-- GEBUCHTE KONTAKTE
LEFT JOIN tm_kontakte kon1
#N        kon1.slot_nr=slt1.nr AND ()
ON        kon1.slot_nr=slt1.nr AND kon1.besucher_id IN (4207,4204,4206,4205,4203,4208)
-- AUSSTELLER-NAME
LEFT JOIN tm_adressen AS per1
ON        per1.id=kon1.aussteller_id
-- BESUCHER-NAME ZUM KONTAKT WG. SORTIERUNG
LEFT JOIN tm_adressen AS per2
ON        per2.id=kon1.besucher_id

-- GEBUCHTE EVENTS
LEFT JOIN tm_eventbuchungen evb1
ON        ( evb1.von_slot_nr=slt1.nr OR evb1.bis_slot_nr=slt1.nr ) AND evb1.adress_id IN (4207,4204,4206,4205,4203,4208)
-- EVENTNAME
LEFT JOIN tm_events AS evt1
ON        evt1.id=evb1.wunsch_event_id
-- BESUCHER-NAME ZUM EVENT WG. SORTIERUNG
LEFT JOIN tm_adressen AS per3
ON        per3.id=evb1.adress_id

WHERE     slt1.owner_id=5
ORDER BY  slt1.nr, per2.nname, per2.vname, per3.nname, per3.vname

LG, Kalle