yo,
Richtig, aber die Syntax "FROM tab1, tab2 WHERE tab1.id=tab2.id" produziert auch in MySQL eben nicht zuerst ein Kreuzprodukt, und filtert dann (im Gegensatz zu "FROM tab1 JOIN tab2 ON tab1.id=tab2.id"), sondern es wird gleich zu einem entsprechenden JOIN hin optimiert.
ok, ich denke da habe ich es einfach falsch interpretiert. ich dachte es geht generell darum, ob dbms noch kreuzprodukte bilden.
wobei man dazu sagen muss, dass es eigentlich genau umgekehrt deiner begründung ist. das dbms zieht die JOIN beidnung in die WHERE klausel mit rein. insofern wird keine join bedingung zuerst ausgeführt und dafür die abfrage optimiert. bei oracle ist es unter anderem auch noch so, dass die reihenfolge der joins in umgekehrter reihenfolge der schreibweise ausgeführt wird, also festgelegt ist. ausserdem sollten bestimmte anweisungen in der where klausel vor den joins ausgeführt werden und bei abhängigen Daten ist es auch die verwendung der indexe auf eine tabelle nur beschränkt möglich.
Ilja