平成28年度 春期 応用情報技術者試験 午前 問27
関数従属を次のように表記するとき,属性 a ~ e で構成される関係を第 3 正規形にしたものはどれか。
〔関数従属〕
(1) 属性 X の値が与えられると,属性 Y の値を一意に決めることができる。(左の図)
(2) 属性 X と属性 Y の二つの値が与えられると,属性 Z の値を一意に決めることができる。(右の図)

〔正規化する関係〕

キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:エ
図から読み取れる関数従属は次のとおりです。
- a → b,a → c,a → d
- b → c
- {b,d} → e
a が決まれば b,c,d が決まり,さらに b と d から e が決まるので,主キーは a です。
- c は a → b → c と推移的に従属しているので,b → c を別の関係(b,c)に分けます。
- e は {b,d} に従属しているので,{b,d} → e を別の関係(b,d,e)に分けます。
- 残りは a → b,a → d の関係(a,b,d)です。
したがって,(a,b,d),(b,c),(b,d,e)の3つに分けたものが第3正規形です。
-
ア: (a,b,c,d)と(b,d,e)
誤り。(a,b,c,d)に推移的関数従属 a → b → c が残っているため,第3正規形ではありません。 -
イ: (a,b,c,d),(b,c),(b,d,e)
誤り。(b,c)を分けていますが,(a,b,c,d)に c が残っており,推移的関数従属が解消されていません。 -
ウ: (a,b,d)と(b,d,c,e)
誤り。c は b だけで決まるので,(b,d,c,e)では c が主キー {b,d} の一部に部分関数従属しており,第2正規形の条件も満たしません。 -
エ: (a,b,d),(b,c),(b,d,e)
正しい。推移的関数従属と部分関数従属がすべて解消されており,第3正規形になっています。
答え
エ: (a,b,d),(b,c),(b,d,e)
出典:平成28年度 春期 応用情報技術者試験 午前 問27