平成23年度 特別 午前Ⅱ 問10
データベース方式
ドメインに関する問題
関係データモデルにおいて属性 A,B を考える。属性 A のドメイン(定義域)は m 個の要素から成る集合であり,属性 B のドメインは n 個の要素から成る集合であるとする。このとき,関係 R を R(A,B)とすると,R には最大何個のタプルがあるか。
- ア2^m 2^n
- イ(m+n)^2
- ウm+n
- エmn
答えと解説を見る
✓ これが正解エmn
解説
A の値 m 通りと B の値 n 通りの組合せなので、最大 mn 個です。
関係はタプルの集合で、同じタプルを二つもつことはありません。R(A,B) のタプルは A の値と B の値の組なので、とり得るタプルの種類は、A のドメインの要素 m 個と B のドメインの要素 n 個の組合せ、つまり直積の要素数 m×n=mn 個です。関係は直積の部分集合なので、すべての組合せが現れたときが最大で、mn 個になります。たとえば m=2、n=3 なら組合せは6通りで、和の5通りや和の2乗の25通りにはならないことが確かめられます。関係のタプル数の上限は、各属性のドメインの要素数を掛け合わせたもの、と覚えておくと便利です。
ほかの選択肢はなぜ違うのか
- ア2^m 2^n:2^m は A のドメインの部分集合の数、2^n は B のドメインの部分集合の数で、それを掛けた値は値の組の数とは別物です。m=2、n=3 なら32になり、組は6通りしかないので上限になりません。
- イ(m+n)^2:(m+n)^2 は二つのドメインを一つにまとめてから2乗した数です。A には A のドメイン、B には B のドメインの値しか入らないので、m=2、n=3 なら25となり、実際の組合せ6通りを超えます。
- ウm+n:m+n は二つのドメインの要素を並べた数で、値の組合せを数えていません。A の一つの値に B の値が n 通り組めるので、掛け算で数える必要があります。m=2、n=3 なら5で、6通りに足りません。
出典:平成23年度 特別 データベーススペシャリスト試験 午前Ⅱ 問10
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)