You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PostgreSQL中合并Table_0、Table_1、Table_2创建新表?

在PostgreSQL中合并三张表创建新表的方法

你可以通过以下两种常用方式实现将三张表的所有数据合并到新表中:

方法一:直接创建并插入数据(推荐)

使用CREATE TABLE AS语句配合UNION ALL,一次性完成新表创建和数据插入,这种方式简单高效,且会自动继承原表的字段类型:

CREATE TABLE combined_transactions AS
SELECT CustomerID, Trans_date FROM Table_0
UNION ALL
SELECT CustomerID, Trans_date FROM Table_1
UNION ALL
SELECT CustomerID, Trans_date FROM Table_2;

这里用UNION ALL而不是UNION,是因为UNION会自动去重,而我们需要保留三张表的所有原始数据,UNION ALL的执行效率也更高。

方法二:先创建表再插入数据

如果需要先自定义新表的结构(比如添加主键、约束等),可以先创建和原表结构匹配的表,再插入数据:

  1. 创建新表:
CREATE TABLE combined_transactions (
    CustomerID VARCHAR(10),
    Trans_date DATE
);
  1. 插入所有数据:
INSERT INTO combined_transactions (CustomerID, Trans_date)
SELECT CustomerID, Trans_date FROM Table_0
UNION ALL
SELECT CustomerID, Trans_date FROM Table_1
UNION ALL
SELECT CustomerID, Trans_date FROM Table_2;

内容的提问来源于stack exchange,提问作者cillaw clarss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 00:55:20