データベース

基本情報技術者試験 科目A免除 修了試験 20200726 実施分 問27

属性 a の値が決まれば属性 b の値が一意に定まることを,a → b で表す。例えば,社員番号が決まれば社員名が一意に定まるということの表現は,社員番号 → 社員名である。この表記法に基づいて,図の関係が成立している属性 a〜j を,関係データベース上の三つのテーブルで定義する組合せとして,適切なものはどれか。
関数従属の図: a → b,a → c,a → d,a → e。b → f,b → g,b → h。e → i,e → j。(c,d からは矢印なし。f〜j は右端)
  • ア テーブル 1 (a) テーブル 2 (b,c,d,e) テーブル 3 (f,g,h,i,j)
  • イ テーブル 1 (a,b,c,d,e) テーブル 2 (b,f,g,h) テーブル 3 (e,i,j)
  • ウ テーブル 1 (a,b,f,g,h) テーブル 2 (c,d) テーブル 3 (e,i,j)
  • エ テーブル 1 (a,c,d) テーブル 2 (b,f,g,h) テーブル 3 (e,i,j)

出典:基本情報技術者試験 科目A免除 修了試験 20200726 実施分 問27

答えと解説を見る

正解:イ

覚える知識

関数従属性に基づく第3正規形への分解

第3正規形では、主キー以外の属性が決める従属関係を別表に分離して推移的関数従属を除く。

この問題で必要なこと

a→b,c,d,e、b→f,g,h、e→i,jの従属関係から、b,eの推移従属を別表に分け、(a,b,c,d,e)(b,f,g,h)(e,i,j)とする。

ひっかけ

推移従属を残した表や、決定する属性を含まない分割を選ばせる。

この知識の出題:本試験系 6 回・免除試験 32 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「関数従属と正規化(第1〜第3正規形)」で学ぶ

同じ知識の過去問