CREATE TABLE t1 (A INT, B INT); CREATE TABLE t2 (A INT, C INT); INSERT INTO t1 VALUES(1, 10); INSERT INTO t1 VALUES(1, 20); INSERT INTO t1 VALUES(1, 30); SELECT * FROM t1; ---------- | A | B | ---------- | 1 | 10 | | 1 | 20 | | 1 | 30 | ---------- INSERT INTO t2 VALUES(1, 110); INSERT INTO t2 VALUES(1, 220); INSERT INTO t2 VALUES(1, 330); SELECT * FROM t2; ----------- | A | C | ----------- | 1 | 110 | | 1 | 220 | | 1 | 330 | ----------- SELECT * FROM t1 CROSS JOIN t2; SELECT * FROM t1 INNER JOIN t2; SELECT * FROM t1 JOIN t2; -------------------- | A | B | A | C | -------------------- | 1 | 30 | 1 | 110 | | 1 | 20 | 1 | 110 | | 1 | 10 | 1 | 110 | | 1 | 30 | 1 | 220 | | 1 | 20 | 1 | 220 | | 1 | 10 | 1 | 220 | | 1 | 30 | 1 | 330 | | 1 | 20 | 1 | 330 | | 1 | 10 | 1 | 330 | -------------------- SELECT * FROM t1 NATURAL JOIN t2; ---------------- | A | B | C | ---------------- | 1 | 30 | 110 | | 1 | 20 | 110 | | 1 | 10 | 110 | | 1 | 30 | 220 | | 1 | 20 | 220 | | 1 | 10 | 220 | | 1 | 30 | 330 | | 1 | 20 | 330 | | 1 | 10 | 330 | ---------------- **************************************************************************************** **************************************************************************************** INSERT INTO t1 VALUES(1, 10); INSERT INTO t1 VALUES(2, 20); INSERT INTO t1 VALUES(3, 30); SELECT * FROM t1; ---------- | A | B | ---------- | 1 | 10 | | 2 | 20 | | 3 | 30 | ---------- INSERT INTO t2 VALUES(4, 40); INSERT INTO t2 VALUES(5, 50); INSERT INTO t2 VALUES(6, 60); SELECT * FROM t2; ---------- | A | C | ---------- | 4 | 40 | | 5 | 50 | | 6 | 60 | ---------- SELECT * FROM t1 CROSS JOIN t2; SELECT * FROM t1 INNER JOIN t2; SELECT * FROM t1 JOIN t2; ------------------- | A | B | A | C | ------------------- | 3 | 30 | 4 | 40 | | 2 | 20 | 4 | 40 | | 1 | 10 | 4 | 40 | | 3 | 30 | 5 | 50 | | 2 | 20 | 5 | 50 | | 1 | 10 | 5 | 50 | | 3 | 30 | 6 | 60 | | 2 | 20 | 6 | 60 | | 1 | 10 | 6 | 60 | ------------------- SELECT * FROM t1 NATURAL JOIN t2; Nothing