SELECT *
FROM t1
JOIN t2
ON t1.id1 = t2.id2
在 MySQL 上生成这些表的 JOIN。如何将结果存储在第三个表中,而不必逐列定义它。
我试过这个来创建第三个表,但它不起作用。
CREATE TABLE t3 LIKE
(
SELECT *
FROM t1
JOIN t2
ON t1.id1 = t2.id2
) a
如果您希望新表包含您的结果SELECT
:
CREATE TABLE t3 SELECT * FROM t1 JOIN t2 ON t1.id1 = t2.id2
或者,如果您只是希望它基于联接的架构:
CREATE TABLE t3 SELECT * FROM t1 JOIN t2 ON t1.id1 = t2.id2 WHERE FALSE
这应该这样做:
SELECT * into t3
FROM t1
JOIN t2
ON t1.id1 = t2.id2
您可以创建一个类似于表格的视图:
CREATE VIEW t3 AS
SELECT *
FROM t1
JOIN t2
ON t1.id1 = t2.id2
然后您可以在其他联接中引用此视图,就好像它是它自己的表一样。