因此,我团队中的一位高级人员正在使用 tb_party 表中的相应值更新 staging_table。我可以理解他是否使用了内部连接(在这种情况下,staging_table 将被更新为完全匹配)。但是他为什么要使用右外连接呢?有人可以在下面的查询中解释右连接的意义吗?如果某些记录不匹配,暂存表会发生什么情况?
UPDATE C
SET c.party_first_name = e.customername
,c.party_type =
CASE
WHEN e.ClassificationType is not null THEN e.ClassificationType
ELSE c.party_type
END
,c.tax_indicator =
case
when c.party_type='entity' then e.TaxNonTaxGovernmentIDNumberEntitiesTaxNonTaxGovernmentIDType
Else NULL
END
FROM staging_table C
right join MTB_AML.dbo.tb_party E
on c.party_key = E.CustomerInternalID