如何使用复制命令将数据从一个表复制到 postgres 中的另一个表 [英] How do I copy data from one table to another in postgres using copy command

查看:89
本文介绍了如何使用复制命令将数据从一个表复制到 postgres 中的另一个表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们使用copy命令将一张表的数据拷贝到数据库外的一个文件中.

We use copy command to copy data of one table to a file outside database.

是否可以使用命令将一个表的数据复制到另一个表.

Is it possible to copy data of one table to another table using command.

如果是,任何人都可以分享查询.

If yes can anyone please share the query.

或者有没有更好的方法,比如我们可以使用 pg_dump 或类似的东西.

Or is there any better approach like we can use pg_dump or something like that.

推荐答案

你不能轻易做到这一点,但也没有必要这样做.

You cannot easily do that, but there's also no need to do so.

CREATE TABLE mycopy AS
SELECT * FROM mytable;

CREATE TABLE mycopy (LIKE mytable INCLUDING ALL);

INSERT INTO mycopy
SELECT * FROM mytable;

如果您只需要选择某些列或对它们重新排序,您可以这样做:

If you need to select only some columns or reorder them, you can do this:

INSERT INTO mycopy(colA, colB)
SELECT col1, col2 FROM mytable;

您还可以选择性地执行 pg_dump 并恢复目标表.

You can also do a selective pg_dump and restore of just the target table.

这篇关于如何使用复制命令将数据从一个表复制到 postgres 中的另一个表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆