根据同一列中的值进行更新



所以我有3列表。ID,国家和语言代码。第二表:ID, UserID, ParameterID, ParameterValue。我想根据choosenparameterid的另一个ParameterValue更新choosenparameterid的ParameterValue。对于我表中的每个UserID,我想从第一个表中使用LangCode更新ParameterValue。因此,在下面的数据中,如果用户在ParameterID上有匹配的ParameterValue,对应于国家到表1中的值,列国家,它将更新44到50用户B71B9338和9A0DC6D8 44到58。

第一个表:

<表类> ID 国家 LangCode tbody><<tr>B96BXE34德国50073 b4124意大利58

用EXISTS限制用户更新

update s
set ParameterValue = f.LangCode
from secondTbl s
join firstTbl f on s.ParameterID = '328E341A'
and exists (
select 1 
from secondTbl s2
where s2.UserID = s.UserID and s2.ParameterID ='57870A4D' and s2.ParameterValue = f.Country)

最新更新