社員の保有する資格を下表のようにまとめた。資格は、業務上の必要によりA〜Eの5段階にランク分けし、ランクに応じて申請により手当を支給している。この表を第三正規形に変換したとき、表の数は最少でいくつになるか。最も適切なものはどれか。
┌───┬────┬───┬───┬───────┬
│社員ID│ 社員名 │ 住所 │資格ID│ 資格名 │
┝━━━┿━━━━┿━━━┿━━━┿━━━━━━━┿
│ 00123│田中太郎│○○市│ 00011│応用情報技術者│
├───┼────┼───┼───┼───────┼
│ 00123│田中太郎│○○市│ 00015│技術士 │
├───┼────┼───┼───┼───────┼
│ 00254│佐藤三郎│△△町│ 00030│基本情報技術者│
└───┴────┴───┴───┴───────┴
┬─────┬─────┬────┐
│ 申請日 │資格ランク│ 手当額 │
┿━━━━━┿━━━━━┿━━━━┥
│2017/ 7/ 5│ C │ 10,000│
┼─────┼─────┼────┤
│2018/ 3/15│ A │ 20,000│
┼─────┼─────┼────┤
│2015/ 7/10│ D │ 5,000│
┴─────┴─────┴────┘
@ 2 A 3 B 4 C 5 D 6
B
第三正規化は、テーブル内にある主キー以外の項目に従属する関係 (推移従属) を別テーブルに移し、どのテーブルもすべての属性が主キーに対して完全従属の状態にすることである。
ちなみに、第二正規化は、主キーまたは主キーの一部によって一意に定まる属性を別テーブルに分離することである。
第三正規形に変換すると以下のとおり4つとなる。
┌───┬───┬─────┐
│社員ID│資格ID│ 申請日 │
└───┴───┴─────┘
┌───┬────┬───┐
│社員ID│ 社員名 │ 住所 │
└───┴────┴───┘
┌───┬───────┬─────┐
│資格ID│ 資格名 │資格ランク│
└───┴───────┴─────┘
┌─────┬────┐
│資格ランク│ 手当額 │
└─────┴────┘
V−26 | 目次 | V−28 |