Wenn Sie Ihre Tabellen ohne jede JOIN ON
Klausel oder Gleichheiten/conditionins in der WHERE
Klausel angeben Sie erhalten das catesische Produkt, nach dem Sie suchen.
SELECT table1.field1, table2.field2
FROM table1, table2
wird Ihnen geben, was Sie verlangen. Zeige es ausdrücklich mehr ...
SELECT * FROM table1;
+--------+
| field1 |
+--------+
| 1 |
| 2 |
+--------+
SELECT * FROM table2;
+--------+
| field2 |
+--------+
| 3 |
| 4 |
+--------+
SELECT table1.field1, table2.field2 FROM table1, table2;
+--------+--------+
| field1 | field2 |
+--------+--------+
| 1 | 3 |
| 2 | 3 |
| 1 | 4 |
| 2 | 4 |
+--------+--------+
'cross join' ==' inner join' [MySQL 5.0] (http://dev.mysql.com/doc/refman/5.0/en/join.html) – bobobobo
Noch mehr, cross join == inner join = = beitreten –
In MySQL sind JOIN, CROSS JOIN und INNER JOIN syntaktische Äquivalente, die nicht identisch sind. INNER JOIN und, (Komma) sind in Abwesenheit einer Join-Bedingung semantisch äquivalent: Beide erzeugen ein kartesisches Produkt zwischen den angegebenen Tabellen (dh jede Zeile in der ersten Tabelle ist mit jeder Zeile in der zweiten Tabelle verbunden Tabelle). Also Join == innere Join aber nicht wahr für Cross Join == innere Join – mokNathal