JOIN ? Aber welchen ?
Posted: 2003-02-25 12:19
Mal ne Frage zur SQLsyntax direkt. Hier gibts doch bestimmt auch Leute, die das drauf haben.
Ich versuche krampfhaft eine Abfrage zu schreiben, die mir 6 Tabellen zu einer Ergebnismenge macht, wobei nicht garantiert ist, dass die Ausgangstabelle vollständig gefüllt ist, so dass keine einfach AND zur Anwendung kommen kann.
Folgende habe ich versucht:
Sollte eigentlich ein LEFT JOIN nach alter Syntax sein. Geht aber nicht. Fehler gibts nicht und in der Ergebnismenge erscheint nur die entsprechende ID nicht jedoch die dazugehörigen Daten der referenzierten Tabelle.
Der geht garnicht. Es kommt keine Antwort.
Ich versuche krampfhaft eine Abfrage zu schreiben, die mir 6 Tabellen zu einer Ergebnismenge macht, wobei nicht garantiert ist, dass die Ausgangstabelle vollständig gefüllt ist, so dass keine einfach AND zur Anwendung kommen kann.
Folgende habe ich versucht:
Code: Select all
$result = mysql_query("select * from
" . $tblpref . "war_war as W, " . $tblpref . "war_squad as S,
" . $tblpref . "war_maps as M, " . $tblpref . "war_com as C,
" . $tblpref . "war_server as R, " . $tblpref . "war_art as A
where
W.id*='$id' AND
S.id*=W.war_squad AND
M.id*=W.war_map_1 AND
M.id*=W.war_map_2 AND
M.id*=W.war_map_3 AND
M.id*=W.war_map_4 AND
C.id*=W.war_com AND
R.id*=W.war_server AND
A.id*=W.war_art", $dbi);
Code: Select all
/* $result = mysql_query("select * from
" . $tblpref . "war_war as W, " . $tblpref . "war_squad as S,
" . $tblpref . "war_maps as M, " . $tblpref . "war_com as C,
" . $tblpref . "war_server as R, " . $tblpref . "war_art as A
LEFT JOIN W ON W.id='$id'
LEFT JOIN S ON S.id=W.war_squad
LEFT JOIN M ON M.id=W.war_map_1
LEFT JOIN M ON M.id=W.war_map_2
LEFT JOIN C ON C.id=W.war_com
, $dbi);
*/