一尘不染

使用两个表上的连接更新查询

sql

我有customeraddress桌子。

询问:

SELECT *
FROM addresses a,
     customers b
WHERE a.id = b.id

返回474条记录

对于这些记录,我想添加idcustomer表成cidaddress表。

示例 :如果对于第一条记录,客户的id是9 id,地址的也是9,那么我想在地址表的cid列中插入9。

我试过了:

UPDATE addresses a,
       customers b
SET a.cid = b.id
WHERE a.id = b.id

但这似乎不起作用。


阅读 141

收藏
2021-03-10

共1个答案

一尘不染

这是Postgres UPDATE JOIN格式:

UPDATE address 
SET cid = customers.id
FROM customers 
WHERE customers.id = address.id

这是其他变体:http : //mssql-to-
postgresql.blogspot.com/2007/12/updates-in-postgresql-ms-sql-
mysql.html

2021-03-10