需求:
A库a表中的字段拆分1个到B库b表,所以b表中只保留唯一标识字段(可以理解为id)和另一个被拆分的字段
需要用到的拓展:CREATE EXTENSION dblink
使用dblink创建连接:
SELECT dblink_connect('other_db', 'hostaddr=【IP地址】 port=【端口号】 dbname=【数据库名称】 user=【连接用户名】password=【连接密码】');
使用连接查询数据:
SELECT * FROM dblink('other_db', 'SELECT id,nameFROM tableName') AS t(id int8,name varchar(255));
重点:跨库创建视图
CREATE VIEW "【schema名称】"."【视图名称】" AS
SELECT a.*,b.name
FROM a a
JOIN (
SELECT t.*
FROM dblink('hostaddr=【IP地址】 port=【端口号】 dbname=【连接b表的数据库名称】 user=【连接b表的用户信息】 password=【连接b表的密码】', 'SELECT id,nameFROM b') t(id int8,name varchar(255))) as b ON a.id= b.id;