注:この質問は、同じまたは類似の回答の選択肢を使用する一連の質問の一部です。回答の選択は、シリーズ内の複数の質問に対して正しい場合があります。各質問は、このシリーズの他の質問とは無関係です。質問に記載されている情報と詳細は、その質問にのみ適用されます。
Customer_CRMSystemおよびCustomer_HRSystemという名前のテーブルを含むデータベースがあります。どちらのテーブルも以下の構造を使用しています。

表には以下のデータが含まれます。
得意先コードシステム

Customer_HRSystem

CustomerCodeにNULL値を含むレコードは、CustomerNameによって一意に識別できます。
両方のテーブルに表示され、null以外のCustomerCodeを持つ顧客を表示する必要があります。
どのTransact-SQLステートメントを実行しますか?
A:

B:

子:

D:

E:

F:

G:

H:

正解:B
説明/参照:
Explanation:
INTERSECTは、左右両方の入力問合せ演算子によって出力される個別の行を返します。
間違った答え:
A:INNER JOINは、両方のテーブルで一致する値を持つレコードを返しますが、重複レコードを返します。
C:LEFT OUTER JOINは、左側のテーブルからすべてのレコードを返し、右側のテーブルから一致したレコードを返します。
D:EXCEPTは、右側の入力照会では出力されない、左側の入力照会とは異なる行を返します。
E、F:UNIONとUNION ALLは、2つ以上のクエリの結果を単一の結果セットに結合します。この結果セットには、共用体内のすべてのクエリに属するすべての行が含まれます。
G:CROSS JOINは両方のテーブルからデータの可能なすべての組み合わせを返します。
H:FULL OUTER JOINは、左の表または右の表のいずれかに一致があると、すべてのレコードを返します。注:NULL値は、結合操作では異なる値として扱われます。
参考文献:
https://docs.microsoft.com/en-us/sql/relational-databases/performance/joins?view=sql-server-2017
https://docs.microsoft.com/ja-jp/sql/t-sql/language-elements/set-operators-except-and-intersect-transact- sql?view = sql-server-2017
https://docs.microsoft.com/en-us/sql/t-sql/language-elements/set-operators-union-transact-sql?view=sql- server-2017
https://www.w3schools.com/sql/sql_join.asp