Hallo!
ein typisches Beispiel für eine UNION-Abfrage. Das kann allerdings mysql nicht.
Schade! So einiges vermisse ich in letzter Zeit an mySQL. Aber einem geschenkten Pferd, schaut man nichts ins Maul, oder selbst eine Datenbank programmieren oder sich für eine andere(viel Geld) entscheiden. :-)
create temporary table test.tmp (id INT not null, name VARCHAR (100), info VARCHAR (100));insert into test.tmp select test.tab1.id,Name,'' as info from test.tab1;insert into test.tmp select test.tab2.tab1_id,'' as Name, test.tab2.info as info from test.tab1 left join test.tab2 on test.tab1.id=test.tab2.ta
b1_id;SELECT * from test.tmp order by id;drop table test.tmp;
Problem ist, mehrere Statements arbeitet mySQL IMHO nach einander ab, also wie nach einander abgesetzt Statments.
select tab1.id,Name,info from tab1 left join tab2 on tab1_id=tab1.id order by id
Hier erhälst du zwar keine Nullzellen, aber gleiche Name erfüllen ja prinzipiell den gleichen Effekt. Werte die einen Eintrag in der Tab1 haben und keinen Eintrag in Tab2 werden ja sowieso zurückgegeben.
Jaein! Ich wollte als erstes den Namen schreiben, dann alle Fotos(tab2.info) dann den nächsten Namen usw.. Mit NULL hätte ich das schön abfragen können.
if(is_null($name))
{
Name
}
else
{
Foto
}
Aber man kann das sicherlich was basteln! Ich werde es auf alle Fälle man austesten.
Mit zwei SELECTs kann ich auch leben, zuerst
die Namen dann die Fotos.
Du hattest hier nur falsch verknüpft.
Werde ich doch mal gleich probieren.
Danke und MfG, André Laugks