将具有不同列的多个 table 合并为一个 table

combine mutiple tables with different column in to one table

我有三个 table 包含完全不同的数据和不同的 header 列。

我需要一个查询(或触发器)来将所有这些数据从这三个 table 插入到 final_table。我可以在所有 table 具有相同列但不具有不同列 header 时执行这些操作。 提前致谢

这可以像(对于新的 table)

一样简单吗
select *
into new_table
from sql_1, sql_2, sql_3

如果您创建了 table,则可以填充它:

insert into new_table (col_1, col_2, col_3, etc.,)
select col_1, col_2, col_3, etc.,
from sql_1, sql_2, sql_3

(调整列名称以适应)

您可以使用 UNION 语句和别名:

INSERT INTO final_table
SELECT col_1 AS c1, col_2 AS c2, col_3 AS c3 FROM SQL_1
UNION
SELECT col_4 AS c1, col_5 AS c2, col_6 AS c3 FROM SQL_2
UNION
SELECT col_7 AS c1, col_8 AS c2, NULL AS c3 FROM SQL_3

并选择列别名以匹配 final_table 中的列名。