令和7年度 秋期 データベーススペシャリスト試験 午前II 問6
テクノロジデータベース
この問題は2025(R7)秋 データベーススペシャリスト 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。
本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。
次の表に対して,第3正規形まで正規化を行った場合,少なくとも幾つの表に分割されるか。ここで,顧客の1回の注文に対して一つの受注番号が割り当てられ,顧客は1回の注文で一つ以上の商品を注文できるものとする。

図の説明テキスト
| 受注番号 | 顧客コード | 顧客名 | 受注日 | 商品コード | 商品名 | 単価 | 受注数 | 受注金額 |
|---|---|---|---|---|---|---|---|---|
| 1055 | A7053 | 鈴木電気 | 2025-07-01 | T035 | テレビA | 85,000 | 10 | 850,000 |
| 1055 | A7053 | 鈴木電気 | 2025-07-01 | K083 | 無線スピーカーA | 23,000 | 5 | 115,000 |
| 1055 | A7053 | 鈴木電気 | 2025-07-01 | S172 | Blu-rayプレイヤーB | 78,000 | 3 | 234,000 |
| 2030 | B7060 | 中村商会 | 2025-07-03 | T050 | テレビB | 90,000 | 3 | 270,000 |
| 2030 | B7060 | 中村商会 | 2025-07-03 | S172 | Blu-rayプレイヤーB | 78,000 | 10 | 780,000 |
| 3025 | C9025 | 佐藤電気 | 2025-07-03 | T035 | テレビA | 85,000 | 3 | 255,000 |
| 3025 | C9025 | 佐藤電気 | 2025-07-03 | K085 | 無線スピーカーB | 25,000 | 2 | 50,000 |
| 3025 | C9025 | 佐藤電気 | 2025-07-03 | S171 | Blu-rayプレイヤーA | 50,000 | 8 | 400,000 |
| 3090 | B7060 | 中村商会 | 2025-07-04 | T050 | テレビB | 90,000 | 1 | 90,000 |
| 3090 | B7060 | 中村商会 | 2025-07-04 | T035 | テレビA | 85,000 | 2 | 170,000 |
解答・解説を読む
正解: 選択肢ウ
第3正規形までの正規化プロセスは以下の手順で行われます。実際の業務システムでよく見られる「受注」のデータを想定して解説します。対象となる表が初期状態(非正規形)として「受注番号、顧客番号、顧客名、商品番号、商品名、数量」などの情報を持っていると考えます。これを正規化していきます。
- 第1正規形(繰り返し項目の排除) 「顧客は1回の注文で一つ以上の商品を注文できる」ため、1つの受注情報の中に複数の商品情報が含まれることになります(繰り返し項目)。これを分離し、例えば主キーを「受注番号」とする「受注表(受注番号, 顧客番号, 顧客名)」と、主キーを「受注番号+商品番号」とする「受注明細表(受注番号, 商品番号, 商品名, 数量)」の2つに分けます。
- 第2正規形(部分関数従属の排除) 複合主キーの一部にのみ従属する項目を別の表に分離します。「受注明細表」の主キーは複合キーですが、「商品名」は「商品番号」のみに 部分関数従属 しています。これを分離し、「商品表(商品番号, 商品名)」を作成します。
- 第3正規形(推移的関数従属の排除) 主キー以外の項目に従属する項目を別の表に分離します。「受注表」において、「顧客名」は主キーである「受注番号」ではなく「顧客番号」に 推移的関数従属 しています。これを分離し、「顧客表(顧客番号, 顧客名)」を作成します。 以上の手順により、最終的に以下の 4つ の表に分割されます。
- 受注表(受注番号, 顧客番号など) - 受注明細表(受注番号, 商品番号, 数量など) - 顧客表(顧客番号, 顧客名など) - 商品表(商品番号, 商品名など) したがって、少なくとも4つの表に分割されます。
各選択肢の解説
- ア: 2つに分割した状態は、第1正規形(繰り返し項目の分離のみ)を適用した段階などに相当し、正規化が不十分です。
- イ: 3つに分割した状態は、第2正規形(部分関数従属の分離)まで適用した段階などに相当し、推移的関数従属が残っています。
- ウ: 正解です。第3正規形まで正規化した結果、4つの表に分割されます。
- エ: 第3正規形までの正規化プロセスにおいては、通常5つへの分割は発生しません。