令和5年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問8
テクノロジ/データベース次の表を,第 3 正規形まで正規化を行った場合,少なくとも幾つの表に分割されるか。ここで,顧客の 1 回の注文に対して 1 枚の受注伝票が作られ,顧客は 1 回の注文で一つ以上の商品を注文できるものとする。

出典:令和5年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問8
- ア2
- イ3
- ウ4
- エ5
正解:ウ
解説
主キーは受注番号と商品コードの組です。受注番号→顧客コード,受注日,顧客名という部分関数従属,商品コード→商品名,単価という部分関数従属があり,さらに顧客コード→顧客名という推移的関数従属もあります。これらを除去すると,受注(受注番号, 顧客コード, 受注日),顧客(顧客コード, 顧客名),受注明細(受注番号, 商品コード, 受注数),商品(商品コード, 商品名, 単価)の 4 表に分割されます。なお受注金額は単価×受注数で導出できる項目です。
選択肢ごとの解説
- ア誤り。2 表では商品や顧客の情報の重複を除去しきれず,第 3 正規形になりません。
- イ誤り。3 表では顧客コード→顧客名の推移的関数従属,または商品の部分関数従属のいずれかが残ってしまいます。
- ウ正しい。受注,顧客,受注明細,商品の 4 表に分割することで第 3 正規形になります。
- エ誤り。5 表は必要以上の分割であり,「少なくとも幾つ」という問いの答えにはなりません。