微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在postgresql中插入…值(SELECT … FROM …)?

我正在使用 Postgresql数据库.我有一个数据库是 – db1,我在这数据库中有一个表是App1.

我需要针对db1中的这个App1表进行选择查询,然后我得到的结果是什么,我需要将它们插入到App2表中,因为它在另一个数据库db2中.

下面是我在db1中对App1表运行的查询

select col1,col2 from App1 limit 5

现在有什么方法可以使用Insert语句和上面的SELECT语句,它可以自动插入到App2表中,这是在db2中吗?

沿着这条线的东西 –

Insert into … values ( SELECT … FROM … )

这是可以在Postgresql中做的,因为这两个表都在不同的数据库中吗?

要在数据库之间执行此操作,必须使用 the foreign data wrapper postgres_fdwuse dblink.请参阅文档. Postgresql不支持数据库SELECT.

通常,如果您发现自己想要这样做,则应该在单个数据库中使用单独的模式.

顺便说一句,一般来说:

INSERT INTO ... SELECT ...

即没有子查询,没有括号.那是因为VALUES子句实际上也是一个独立的语句:

INSERT INTO ... VALUES ...

观察:

regress=> VALUES (1,2),(2,3);
 column1 | column2 
---------+---------
       1 |       2
       2 |       3
(2 rows)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐