ウカマル応用情報技術者ログイン

平成28年度 春期 応用情報技術者 問27

テクノロジ系

関数従属を次のように表記するとき,属性 a〜e で構成される関係を第 3 正規形にしたものはどれか。

〔関数従属〕 (1) 属性 X の値が与えられると,属性 Y の値を一意に決めることができる。 (2) 属性 X と属性 Y の二つの値が与えられると,属性 Z の値を一意に決めることができる。

図

図の内容(文字)
(1)の図:横に並んだ箱[X][Y][Z]。Xから出た線がYへの矢印になっている(X→Y)。 (2)の図:横に並んだ箱[X][Y][Z]。XとYから出た線が合流し,Zへの矢印になっている({X,Y}→Z)。

〔正規化する関係〕

図

図の内容(文字)
横に並んだ箱[a][b][c][d][e]。 上側:aから出た線がb,c,dへそれぞれ矢印になっている(a→b,a→c,a→d)。 下側:bから出た線がcへの矢印になっている(b→c)。bとdから出た線が合流し,eへの矢印になっている({b,d}→e)。
選択肢

選択肢の図

図の内容(文字)
ア
[a|b|c|d] [b|d|e]
イ
[a|b|c|d] [b|c] [b|d|e]
ウ
[a|b|d] [b|d|c|e]
エ
[a|b|d] [b|c] [b|d|e]
正解と解説

正解 エ

第3正規形では、推移的関数従属a→b→cとa→{b,d}→eを取り除きます。分解後の関係は(a,b,d)、(b,c)、(b,d,e)です。

主キーはaで、aからb、c、dが決まり、{b,d}を通じてeも決まります。cはa→b→cという推移的関数従属で決まります。eもa→{b,d}→eという推移的関数従属で決まります。第3正規形にするには、推移的に従属する属性を別の関係に分けます。b→cを(b,c)に、{b,d}→eを(b,d,e)に切り出すと、残りは(a,b,d)になります。

ア:(a,b,c,d)にはa→b→cの推移的関数従属が残っています。そのため第3正規形ではありません。

イ:(b,c)を切り出していますが、(a,b,c,d)にcが残っています。そのためa→b→cの推移的関数従属が解消されていません。

ウ:(b,d,c,e)の主キーは{b,d}です。しかしcはbだけで決まる部分関数従属なので、第2正規形も満たしません。

出典:平成28年度 春期 応用情報技術者試験 問27

全年度から出題。10問で実力を判定します。登録不要。

出典:平成28年度 春期 応用情報技術者試験 問27(独立行政法人情報処理推進機構)

解説と用語ページは生成 AI が書き、別の生成 AI が確かめています。作り方