平成21年度 春期 午前Ⅱ 問2
データベース設計
関数従属に関する問題
関係 R の関係スキーマが R(A,B,C,D,E)であり,関数従属 A→BC,CD→E が成立する。これらの関数従属から決定できる R の候補キーはどれか。ここで,A,B,C,D,E は属性集合であり,XY は X と Y の和集合を表す。
- アAC
- イACD
- ウAD
- エCD
答えと解説を見る
✓ これが正解ウAD
解説
D はどこからも決まらないので、A と D を組にした AD が候補キーです。
候補キーは、関係のすべての属性を一意に決められる属性集合のうち、余分な属性を含まない最小のものです。まず、どの関数従属の右辺にも現れない属性を探します。A→BC の右辺は B と C、CD→E の右辺は E なので、A と D はどこからも決まらず、候補キーに必ず含まれます。次に AD から決まる属性を順に広げます。A→BC で B と C が加わって ABCD になり、C と D がそろったので CD→E で E が加わり、ABCDE のすべてがそろいます。A だけ、D だけではすべてを決められないので、AD は最小です。右辺に一度も出てこない属性を先に拾い、そこから決まる属性を広げて確かめるのが候補キーを探す近道です。
ほかの選択肢はなぜ違うのか
- アAC:AC から広げると、A→BC で B が加わって ABC になりますが、D はどの関数従属からも導けません。D が欠けたままでは CD→E も使えず E も決まらないので、関係全体を一意に決めることができません。
- イACD:ACD からはすべての属性を決められますが、C は A→BC によって A から決まるので、取り除いても困りません。余分な属性を含んでいるため、最小であるという候補キーの条件を満たしません。
- エCD:CD からは CD→E で E が決まり CDE になりますが、A を決める関数従属はどこにもありません。A が決まらなければ B も決まらないので、CD では関係のすべての属性を一意に決められません。
出典:平成21年度 春期 データベーススペシャリスト試験 午前Ⅱ 問2
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)