如何将多个表(具有相同列名)复制到新表 <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,
);
我希望实现的是尝试将上述所有表 t1、t2、t3 复制到新表 new_table 中。
类似的东西:(sql 错误)
CREATE TABLE new_table
AS (SELECT p1,p2,op1,op2)
FROM t1,t2,t3);
此外,如果我创建了新表,我希望每次更新表 t1、t2、t3 时,new_table 也会更新。 - 我需要为此使用触发器吗?
请帮我解决这个问题。
最佳答案
我猜你想使用 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;
如果其中一个表被更新,它会自动反射(reflect)在 View 上。
关于mysql - 如何将多个表(具有相同列名)复制到一个新表 <SQL>。?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13539448/