如何将多个表(具有相同的列名)复制到新表<SQL>。?

use*_*348 4 mysql copy

如何将多个表(具有相同的列名)复制到新表<SQL>

喜欢:

CREATE TABLE t1
(
   p1 longtext,
   p2 longtext,
   op1 varchar
   op2 varchar,
);


CREATE TABLE t2
(
   p1 longtext,
   p2 longtext,
   op1 varchar
   op2 varchar,
);

CREATE TABLE t3
(
   p1 longtext,
   p2 longtext,
   op1 varchar
   op2 varchar,
);
Run Code Online (Sandbox Code Playgroud)

我希望实现的目标是尝试将上述所有表 t1、t2、t3 复制到新表 new_table 中。像这样的:(sql 是错误的)

CREATE TABLE new_table
  AS (SELECT p1,p2,op1,op2)
      FROM t1,t2,t3);
Run Code Online (Sandbox Code Playgroud)

另外,如果我创建了新表,我希望每次表 t1、t2、t3 同时更新时,new_table 也会更新。- 我需要为此使用触发器吗?

请帮我解决这个问题。

Joh*_*Woo 5

我猜你想用VIEW

CREATE VIEW new_Table
AS
SELECT  p1, p2, op1, op2 FROM t1
UNION ALL
SELECT  p1, p2, op1, op2 FROM t2
UNION ALL
SELECT  p1, p2, op1, op2 FROM t3;
Run Code Online (Sandbox Code Playgroud)

如果其中一个表被更新,它会自动反映在视图上。