DBデータベーススペシャリスト試験 午前Ⅱ
平成30年度春期 データベーススペシャリスト 午前Ⅱ 問3
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- ア{A,C}
- イ{A,C,D}
- ウ{A,D}
- エ{C,D}
解き方のヒントを見る
関数従属を整理する視点
関数従属と正規形を確認するときは、属性同士の依存関係を整理し、キーとの関係や分解後の性質を順に見比べる視点を持ちましょう。個別の結論は設問の条件に照らして判断します。
この問題で問われていること
属性の組み合わせがどの属性を決める関係として扱われているかに注目し、その依存関係がキーや正規形の判定条件とどう結び付くかを整理することに集中しましょう。
視点
属性間の依存を、決定する側・決定される側・キーとの関係に分けて捉えます。そのうえで、設問に示された条件を一つずつ対応づけ、判定の根拠がどこにあるかを確認します。
確認ポイント
- 決定する属性集合と、そこから影響を受ける属性を区別できているか
- 候補となるキーと各属性の位置づけを、設問の条件に沿って整理できているか
- 正規形の条件を当てはめる前に、見落とした依存関係がないか確認したか
正解と解説を見る
正解
ウ
解説
AからBとCが決まり、CとDがそろうとEが決まる。したがってAとDを出発点にするとRの全属性を決定でき、どちらか一方を除くと全属性を決定できないため、候補キーは{A,D}です。
理由
{A,D}からは、関数従属A→{B,C}によってBとCが得られる。その結果、CとDがそろうため、{C,D}→EによってEも得られる。最初のAとDを含め、Rの属性{A,B,C,D,E}をすべて決定できる。
比較
候補キーには、全属性を決定できることに加えて、不要な属性を含まない極小性が必要です。AだけではDを決定できず、DだけではAから得られるBやCを決定できないため、{A,D}の各属性は必要です。
選択肢ア
これは不正解だよ。{A,C}では、AからBとCを得られるが、Dを決定する関数従属は与えられていない。そのため、CとDからEを決定する条件もそろわず、Rの全属性を決定できない。
選択肢イ
これは不正解だよ。{A,C,D}はAからBを得て、CとDからEも得られるため全属性を決定できる。しかし、AからCが決まるので、集合中のCを除いた{A,D}でも同じ決定が可能であり、極小ではない。
選択肢ウ(正解)
これは正解だよ。{A,D}からA→{B,C}によりBとCを得られ、CとDがそろうので{C,D}→EによりEも得られる。全属性を決定でき、AまたはDを除くと決定できる属性が不足するため極小である。
選択肢エ
これは不正解だよ。{C,D}からは{C,D}→EによってEを決定できるが、Aを決定する関数従属は示されていない。また、AがなければA→{B,C}も使えず、Rの全属性を決定できない。
学習のポイント
属性閉包を求めた後、全属性を決定できることと極小性を順に確認する。
出典:独立行政法人 情報処理推進機構(IPA)平成30年度春期 データベーススペシャリスト試験 午前Ⅱ 問3(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針