平成22年度 春期 午前Ⅱ 問13
データ操作
自然結合した結果
関係“履修”と関係“担当”を自然結合した結果はどれか。
履修
| 学生 | 科目 |
|---|---|
| 山田太郎 | 情報処理 |
| 山田太郎 | 代数 |
| 加藤花子 | 情報処理 |
担当
| 科目 | 教官 |
|---|---|
| 情報処理 | 鈴木一郎 |
| 代数 | 斎藤正樹 |
選択肢は原典では表(アは 学生・科目・教官 の3列,イ~エは 履修.学生・履修.科目・担当.科目・担当.教官 の4列)。行は“;”で区切った。
- ア学生:山田太郎 / 科目:情報処理 / 教官:鈴木一郎;学生:山田太郎 / 科目:代数 / 教官:斎藤正樹;学生:加藤花子 / 科目:情報処理 / 教官:鈴木一郎
- イ履修.学生:山田太郎 / 履修.科目:情報処理 / 担当.科目:情報処理 / 担当.教官:鈴木一郎;履修.学生:山田太郎 / 履修.科目:代数 / 担当.科目:代数 / 担当.教官:斎藤正樹;履修.学生:加藤花子 / 履修.科目:情報処理 / 担当.科目:情報処理 / 担当.教官:鈴木一郎
- ウ履修.学生:山田太郎 / 履修.科目:情報処理 / 担当.科目:代数 / 担当.教官:斎藤正樹;履修.学生:山田太郎 / 履修.科目:代数 / 担当.科目:情報処理 / 担当.教官:鈴木一郎;履修.学生:加藤花子 / 履修.科目:情報処理 / 担当.科目:代数 / 担当.教官:斎藤正樹
- エ履修.学生:山田太郎 / 履修.科目:情報処理 / 担当.科目:情報処理 / 担当.教官:鈴木一郎;履修.学生:山田太郎 / 履修.科目:情報処理 / 担当.科目:代数 / 担当.教官:斎藤正樹;履修.学生:山田太郎 / 履修.科目:代数 / 担当.科目:情報処理 / 担当.教官:鈴木一郎;履修.学生:山田太郎 / 履修.科目:代数 / 担当.科目:代数 / 担当.教官:斎藤正樹;履修.学生:加藤花子 / 履修.科目:情報処理 / 担当.科目:情報処理 / 担当.教官:鈴木一郎;履修.学生:加藤花子 / 履修.科目:情報処理 / 担当.科目:代数 / 担当.教官:斎藤正樹
答えと解説を見る
✓ これが正解ア学生:山田太郎 / 科目:情報処理 / 教官:鈴木一郎;学生:山田太郎 / 科目:代数 / 教官:斎藤正樹;学生:加藤花子 / 科目:情報処理 / 教官:鈴木一郎
解説
共通の属性“科目”が等しい組を結び、その列を一つにまとめます。
自然結合は、二つの関係に共通する属性の値が等しい組どうしを結び付け、結果には共通の属性を一つだけ残す演算です。履修と担当に共通する属性は科目です。山田太郎さんの情報処理は担当の情報処理と結び付いて教官は鈴木一郎、山田太郎さんの代数は担当の代数と結び付いて斎藤正樹、加藤花子さんの情報処理は鈴木一郎と結び付きます。結果は学生、科目、教官の 3 列で 3 行になります。共通の属性の値が等しいものだけを結び、その属性を重ねずに一つにまとめる、という二点を確かめると自然結合を選べます。
ほかの選択肢はなぜ違うのか
- イ履修.学生:山田太郎 / 履修.科目:情…:科目の値が等しい組を結び付けている点は正しいものの、履修.科目と担当.科目の二つの列をどちらも残しています。共通の属性を一つにまとめる自然結合の結果ではなく、列を重ねたまま結んだ形です。
- ウ履修.学生:山田太郎 / 履修.科目:情…:科目の値が異なる組どうしを結び付けており、例えば山田太郎さんの情報処理に代数の担当教官が付いています。共通の属性の値が等しい組だけを結ぶという、結合の条件を満たしていません。
- エ履修.学生:山田太郎 / 履修.科目:情…:履修の 3 行と担当の 2 行のすべての組合せを並べた 6 行になっていて、科目が一致するかどうかを見ていません。これは条件を付けない直積の結果であり、自然結合ではありません。
出典:平成22年度 春期 データベーススペシャリスト試験 午前Ⅱ 問13
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)