使用来自另一个 table 的信息更新 SQL 服务器中的 table

Updating a table in SQL Server with information from another table

我有一个“主张”table。每个声明都有一个附加的客户端,由几个字母“ABED”表示。出于某种原因,在声明 table 中找不到实际的 clientID,所以我想解决这个问题。 “Clients”table 包含代码和 clientID。我如何 运行 可以根据代码使用 clientID 更新现有声明的查询?

UPDATE claims 
SET clientID = (SELECT clientID FROM clients WHERE claimID = code) 

在索赔 table 中,客户端的代码称为“claimID”。在客户端 table 它被称为代码。

为了清楚起见,我确实在声明 table 中添加了 clientID 列,它目前为 NULL,我希望用来自客户 table 的 clientID 填充它。

这是你想要的吗?

update cla
set clientid = (select t.clientid from clients cli where cli.code = cla.claimid)
from claims cla

这将搜索 clientscodeclaimsclaimid 匹配,并更新相应的 clientid.

UPDATE Clm
SET Clientid = Cnt.Clientid
FROM Claims Clm
JOIN Clients Cnt
ON Clm.Claimid = Cnt.Code