関係データモデルにおける属性のドメインとタプル数【午前2 解説】
要点まとめ
- 結論:関係 R(A, B) の最大タプル数は属性 A と B のドメインの要素数の積 mn である。
- 根拠:関係モデルでは各タプルは属性の値の組み合わせであり、全組み合わせ数が最大タプル数となる。
- 差がつくポイント:ドメインの要素数の積を理解しているか、べき乗や和と混同しないことが重要。
正解の理由
関係 R(A, B) は属性 A と属性 B の組み合わせで構成されるタプルの集合です。属性 A のドメインが m 個、属性 B のドメインが n 個の要素を持つため、属性 A と B の値の組み合わせは m×n 通り存在します。したがって、関係 R に含まれる最大のタプル数は mn 個となります。
よくある誤解
属性のドメインの要素数を単純に足したり、2のべき乗で計算する誤りが多いです。ドメインの組み合わせ数は積で求める点を押さえましょう。
解法ステップ
- 属性 A のドメインの要素数を確認し、m とする。
- 属性 B のドメインの要素数を確認し、n とする。
- 関係 R のタプルは属性 A と B の値の組み合わせであることを理解する。
- 組み合わせ数は m と n の積、すなわち mn であると計算する。
- 選択肢の中から mn に該当するものを選ぶ。
選択肢別の誤答解説
- ア: 2m2n
属性の要素数のべき乗を掛け合わせているが、これは属性の部分集合の数を表すため不適切。
- イ: (m+n)2
属性の要素数の和の二乗は組み合わせ数の計算として誤り。
- ウ: m+n
単純な和は組み合わせ数ではなく、最大タプル数を表さない。
- エ: mn
属性 A と B の値の全組み合わせ数であり、正解。
補足コラム
関係データモデルでは、属性のドメインとはその属性が取りうる値の集合を指します。複数の属性がある場合、関係のタプル数は各属性のドメインの直積(組み合わせ)で決まります。これを理解することは正規化や関係設計の基礎となります。
FAQ
Q: 属性が3つ以上ある場合の最大タプル数は?
A: 各属性のドメインの要素数の積になります。例えば属性 A, B, C のドメインがそれぞれ m,n,p 個なら最大タプル数は m×n×p です。
Q: ドメインの要素数が同じでもタプル数が異なることはありますか?
A: 関係の定義上、最大タプル数はドメインの組み合わせ数ですが、実際のデータベースでは制約や実データにより少なくなることがあります。
関連キーワード: 関係データモデル、ドメイン、タプル数、属性の組み合わせ、直積、データベース基礎