lixx: mySQL: zweidimensionale Abfrage

Beitrag lesen

Danke für Deine Antwort Ilja!

Jetzt habe ich dafür eine Tabelle (Tab) mit den An-Elementen und eine Beziehungstabelle Tab_mm:

Tab:
id int(4) unsigned NOT NULL auto_increment,
name char(32) collate utf8_bin NOT NULL default '',

ich sehe die An-Elemente nicht, nur zwei spalten bestehend aus einer id und einer spalte 'name'. du willst doch nicht etwa die unterschiedlichen werte alle in eine spalte packen oder ? ;-)

An-Elemente sind die A1, A2 ect. Das ist eigentlich der Name. Also: Spalte 'name'. Und die Verknüpfungen sind in der Tabelle Tab_mm.

des weiteren sind die namen deiner tabellen unglücklich gewählt, man kann nicht die fachlichkeit daraus lesen.

Die Tabellennamen sind anonymisiert (Vorschrift). Könnte auch gemüse und gemüse_mm heissen ;-)

deine abfrage ist ein outer join, ...

Habe nun selbst eine Lösung hinbekommen. Vll wirfst Du auch noch einmal einen Blick darauf. Auf jeden Fall sollte man nicht eindimensional denken, wenn man eine zweidimensionale Abfrage möchte *gg*

SELECT Tab.id AS Tab_id1, Tab.name, Tab_mm.Tab_id2, Tab_mm.status
FROM Tab
LEFT JOIN Tab_mm
 ON ( Tab_mm.Tab_id1 = Tab.id )
RIGHT JOIN Tab as Tab2
 ON ( Tab2.id = Tab_mm.Tab_id2 )
ORDER BY Tab.name, Tab2.id

So bekomme ich auch die Ergebnisse, die keine Relation in der Tab_mm haben.

lg lixx