Linuchs: Trotz JOIN nur eine Zeile gewünscht

Beitrag lesen

Hallo,

ich habe eine MySQL-Tabelle mit Vereinen und eine Tabelle mit Beziehungen zwischen den Vereinen. Ein Chor kann Mitglied sein in 0..n Dachorganisationen (Sängerkreis, Landes-, Bundesverband).

Wenn ich nun die Dachorganisationen pro Chor mit LEFT JOIN dazuhole, kann ich merere Zeilen pro Chor bekommen. Die Darstellung in der HTML-Tabelle soll jedoch in derselben Zeile, verschiedene Spalten erfolgen: Chorverzeichnis - siehe z.B. ganz unten Lady Pirates, Mitglied in zwei Organisationen.

Mein SQL:

(  
SELECT  
 adr1.id  
,adr1.gewerbeart  
,adr1.firma1  
,adr1.land_kz  
,adr1.plz  
,adr1.ort  
,adr1.homepage  
,adr1.anred  
,adr1.vname  
,adr1.nname  
,adr1.funktion  
,adr1.last_login  
,'1' remso_mitglied  
,IF (vbm1.verband_id='707',1,0) marinebund_mitglied  
,IF (vbm1.verband_id='785',1,0) issa_mitglied  
,IF (vbm1.verband_id='834',1,0) shantynederland_mitglied  
FROM      bia_adressen adr1  
LEFT JOIN bia_verband_mitglied vbm1  
ON        vbm1.mitglied_id = adr1.id  
WHERE     SUBSTRING(adr1.gewerbeart,6,1)  = 'S'  
AND       adr1.loe_kz = 0  
) UNION (  
SELECT  
 itr1.id  
,itr1.gewerbeart  
,itr1.firma1  
,itr1.land_kz  
,itr1.plz  
,itr1.ort  
,itr1.homepage  
,itr1.anred  
,itr1.vname  
,itr1.nname  
,itr1.funktion  
,'0' last_login  
,'0' remso_mitglied  
,IF (vbm1.verband_id='707',1,0) marinebund_mitglied  
,IF (vbm1.verband_id='785',1,0) issa_mitglied  
,IF (vbm1.verband_id='834',1,0) shantynederland_mitglied  
FROM      bia_interessenten itr1  
LEFT JOIN bia_verband_mitglied vbm1  
ON        vbm1.interessent_id = itr1.id  
WHERE     SUBSTRING(itr1.gewerbeart,6,1)  = 'S'  
AND       itr1.loe_kz = 0  
#GROUP BY  itr1.id  
)  
ORDER BY  land_kz, plz, ort

Das GROUP BY führt nicht zum Ziel, es "verschluckt" die Informationen des JOIN.

Linuchs