在 PostgreSQL 中,可以使用 CREATE TABLE AS
语句将两张表合并生成新表。
例如,假设有两张表 table1
和 table2
,它们具有相同的列名和数据类型,你可以使用以下语法将它们合并生成新表:
CREATE TABLE new_table AS
SELECT * FROM table1
UNION ALL
SELECT * FROM table2;
上述语句中,UNION ALL
关键字用于将两个 SELECT 语句的结果合并到新表中。如果你想去除重复的行,可以使用 UNION
关键字代替 UNION ALL
,它会自动删除重复的行。
另外,如果两张表的列名或数据类型不完全一致,你可以在 SELECT
语句中指定需要的列,并使用相应的转换函数进行数据类型转换。
注意:在执行合并操作之前,确保新表的结构与源表相匹配,否则可能会出现错误。