IPA過去問ドリル

令和6年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問9

テクノロジ/データベース

“商品”表と“納品”表を商品番号で等結合した結果はどれか。 商品 商品番号,商品名,価格 S01,ボールペン,150 S02,消しゴム,80 S03,クリップ,200 納品 商品番号,顧客番号,納品数 S01,C01,10 S01,C02,30 S02,C02,20 S02,C03,40 S03,C03,60 (注:本サイトでは原問題の表を文字表記に変換しています)

出典:令和6年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問9

正解:エ

解説

等結合(イコール結合)は,指定した結合条件に基づいて二つの表の行を結合する演算であり,自然結合とは異なり,結合キーの列を重複したまま両方とも結果に残します。“商品”表の各行に対し,“納品”表の中で商品番号が一致する行が複数あればその件数分だけ結合結果の行が生成されるため,商品番号列が二つ(“商品”側と“納品”側)残った,5 行の結果が正しい等結合の結果になります。

選択肢ごとの解説

  • 誤り。結合結果が商品ごとに 1 行(3 行)しかなく,商品番号が複数の納品に対応する場合(S01,S02)の組合せが反映されていません。また,結合キーの列が一つしか残っておらず,等結合の結果ではありません。
  • 誤り。結合キーの列が二つ残っている点は正しいですが,行数が商品ごとに 1 行(3 行)しかなく,複数の納品行との組合せが反映されていません。
  • 誤り。商品番号ごとに複数の納品行と正しく組み合わされて 5 行になっていますが,結合キーの列(商品番号)が一つしか残っておらず,自然結合の結果に相当し,等結合の結果ではありません。
  • 正しい。“商品”表の商品番号列と“納品”表の商品番号列の両方を残したまま,商品番号が一致する行の組合せを全て生成した 5 行の結果であり,等結合の結果として適切です。
データベーススペシャリストの過去問を演習モードで解く