PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Hilfe !!!


AlexWeber
06.10.2003, 17:11:49
Hallo Leute,
kann irgend jemand den Fehler finden?
$sql="SELECT * FROM `immobilienart` INNER JOIN ( `kategorie` INNER JOIN `objekt` ON `kategorie`.`kategorie_id` = `objekt`.`kategorie` ) ON `immobilienart`.`immobilien_id` = `objekt`.`art`";
Was mache ich falsch???
Mein Ziel ist mehrere Tabellen mit (INNER JOIN) zu verbinden. Es sollten aber mehrere verbindungen in einer Abfrage sein.
Bin für jeden Ratschlag dankbar,
Danke.
Grüße,
Alex...

RDJ
06.10.2003, 17:13:45
Was für eine Datenbank verwendest du ? MySQL ? Wenn ja, forget it, die kann das meines wissens nicht

AlexWeber
06.10.2003, 17:21:42
Ja MY_SQL Datenbank.
Ich bin schon am Verzweifeln.

RDJ
06.10.2003, 17:28:50
hier eine kleine Info

link (http://www.mysql.com/doc/en/JOIN.html)

!!
Note that in versions before Version 3.23.17, the INNER JOIN didn't take a join_condition!


!!

im klartext :

Den INNER JOIN beherrscht mySQL erst seit Version 3.23.17

AlexWeber
06.10.2003, 17:57:40
Danke,
aber das ist nicht das Problem.
wenn ich schreibe: "SELECT * FROM Tabele2 INNER JOIN Tabele1 ON Tabele2.Feld_id=Tabele1.Feld"; ->Dann geht es einwandfrei. ABER was ich brauche ist das ich die Zwei INNER JOIN Befele sprich z.B. "SELECT * FROM Tabele2 INNER JOIN Tabele1 ON Tabele2.Feld_id=Tabele1.Feld" und "SELECT * FROM Tabele3 INNER JOIN Tabele1 ON Tabele3.Feld_id=Tabele1.Feld" in eine Abfrage unterbringe. Das sollte möglich sein, aber wie???
Ich dachte an so was "SELECT * FROM Tabele2 INNER JOIN (INNER JOIN Tabele1 ON Tabele3.Feld_id=Tabele1.Feld) ON Tabele2.Feld_id=Tabele1.Feld" aber es funktioniert nicht.


BITTE HELFT MIR.................

c4
06.10.2003, 19:48:27
2er-Joins machst Du so:
SELECT *
FROM (tab1 INNER JOIN tab2 ON tab2.feld1=tab2.feld1) INNER JOIN tab3 ON tab1.feld1=tab3.feld1
WHERE feldn=0
...
Nach dem Schema kannst Du jeden beliebigen n-fachen Join aufbauen.