“納品”表と“顧客”表の自然結合と同じ結果を得るSQL文はどれか。
- ア
- イ
- ウ
- エ
出典:令和6年度 システム監査技術者試験 午前2 問21
正解:エ
データベースの自然結合(Natural Join)についての問題です。
自然結合とは”2つのテーブルの同じ名前の列”を自動的に結合条件として取り扱う結合処理です。
明示的にUSING句やON句を使うことなく結合が可能です。
自然結合と同じ結果を得るためには、自然結合される列を明示的に使用することになります。
回答ア:
自然結合と異なり顧客名を出力することができません、不適切です。
回答イ:
自然結合と同じ結合条件を用いていますが、列の指定がアスタリスク(*)であるため、2つのテーブルに存在する全ての列が出力されるため、自然結合と比べて顧客番号が重複して出力されます。不適切です。
回答ウ:
自然結合と同じ結合条件を用いていますが、出力する列に顧客名がないため、自然結合と比べ1列少ない状態で出力されます。不適切です。
回答エ:
同じ名前の列である「顧客番号」を明示的に指定した検索条件を用いており、自然結合を同じ結果が出力できます。正しい記述です。