AKI*_*WEB 6 sql database postgresql select insert
我正在使用Postgresql数据库.我有一个数据库 - db1我在这个数据库中有一个表App1.
我需要针对这个App1表进行一个select查询db1,然后我得到的结果是什么,我需要将它们插入到App2表中,因为它在另一个数据库中db2.
下面是我的查询,我正在对App1表中运行db1-
select col1, col2 from App1 limit 5
Run Code Online (Sandbox Code Playgroud)
现在有什么方法可以使用Insert语句和上面的SELECT语句,它可以自动插入到App2表中的哪个db2?
沿着这条线的东西 -
Insert into … values ( SELECT … FROM … )
Run Code Online (Sandbox Code Playgroud)
这是可以在Postgresql中做的,因为这两个表都在不同的数据库中吗?
要在数据库之间执行此操作,您必须使用外部数据包装器postgres_fdw或使用dblink. 请参阅文档。PostgreSQL不支持跨数据库SELECT。
通常,如果您发现自己想要这样做,则应该在单个数据库中使用单独的模式。
顺便说一句,通常是:
INSERT INTO ... SELECT ...
Run Code Online (Sandbox Code Playgroud)
即没有子查询,没有括号。这是因为该VALUES子句实际上也是一个独立的语句:
INSERT INTO ... VALUES ...
Run Code Online (Sandbox Code Playgroud)
观察:
regress=> VALUES (1,2), (2,3);
column1 | column2
---------+---------
1 | 2
2 | 3
(2 rows)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1901 次 |
| 最近记录: |