Sam*_*la 3 postgresql inner-join
我使用下面的参考来更新表 cust_eq_memory_dy 中的 2 列(客户名称、服务)。
表 msrouterlistfinal2 处的环回将匹配 cust_eq_memory_dy 处的地址。
当我在“FROM”处或附近遇到语法错误时,有人可以帮助我吗?
UPDATE cust_eq_memory_dy B
SET customername = A.customername
WHERE B.ipaddress = A.loopbackip
FROM (
SELECT *
FROM DBLINK ( 'host= 10.X.80.160 user=123 password=123 dbname=postgres',
'select customername, serviceid, loopbackip FROM msrouterlistfinal2 ')
as temp (
customername character varying (100),
serviceid character varying (50),
loopbackip character varying (30) )
)A
Run Code Online (Sandbox Code Playgroud)
如果您使用 postgres,我强烈建议您使用WITH语句。
WITH A as ( SELECT * FROM DBLINK ( 'host= 10.X.80.160 user=123 password=123 dbname=postgres', 'select customername, serviceid, loopbackip FROM msrouterlistfinal2 ') as temp ( customername character varying (100), serviceid character varying (50), loopbackip character varying (30) ) )
UPDATE cust_eq_memory_dy B SET customername = (SELECT A.customername FROM A WHERE B.ipaddress = A.loopbackip);
Run Code Online (Sandbox Code Playgroud)
检查此链接以获取更多信息。 https://www.postgresql.org/docs/8.4/static/queries-with.html
| 归档时间: |
|
| 查看次数: |
2567 次 |
| 最近记录: |