CREATE表LIKE JOIN

You*_*cha 2 mysql sql

SELECT *
FROM t1
JOIN t2
ON t1.id1 = t2.id2
Run Code Online (Sandbox Code Playgroud)

在MySQL上产生这些表的JOIN.如何将结果存储在第三个表中,而无需逐列定义.

我试过这个来创建第三个表,但它不起作用.

CREATE TABLE t3 LIKE
(
SELECT *
FROM t1
JOIN t2
ON t1.id1 = t2.id2
) a
Run Code Online (Sandbox Code Playgroud)

egg*_*yal 5

如果您希望新表包含您的结果SELECT:

CREATE TABLE t3 SELECT * FROM t1 JOIN t2 ON t1.id1 = t2.id2
Run Code Online (Sandbox Code Playgroud)

或者,如果您只是希望它基于联接的架构:

CREATE TABLE t3 SELECT * FROM t1 JOIN t2 ON t1.id1 = t2.id2 WHERE FALSE
Run Code Online (Sandbox Code Playgroud)

  • 重要的是要注意,如果两个表包含重复的列名,mysql将抛出错误. (2认同)