我想在Postgres的同一个DB中只将4个表从schema1复制到schema2。并且希望将表保留在schema1中。知道如何在pgadmin和postgres控制台中做到这一点吗?
答案 0 :(得分:28)
您可以使用create table ... like
create table schema2.the_table (like schema1.the_table including all);
然后将数据从源插入到目标:
insert into schema2.the_table
select *
from schema1.the_table;
答案 1 :(得分:18)
您可以使用CREATE TABLE AS SELECT。这种方式您不需要插入。将使用数据创建表。
CREATE TABLE schema2.the_table
AS
SELECT * FROM schema1.the_table;
答案 2 :(得分:1)
从v12开始可以使用的简单语法:
CREATE TABLE newSchema.newTable
AS TABLE oldSchema.oldTable;