そのため、私のチームの先輩が staging_table を tb_party テーブルの対応する値で更新しています。彼が内部結合を使用したかどうかは理解できました (その場合、完全一致のために 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