平成27年度 春期 データベーススペシャリスト試験 午前Ⅱ 問9
テクノロジ/データベース関係RとSにおいて,R÷Sの関係演算結果として,適切なものはどれか。ここで,÷は除算を表す。 R 店,商品 A,a A,b B,a B,b B,c C,c D,c D,d E,d E,e S 商品 a b c (注:本サイトでは原問題の表を文字表記に変換しています)
出典:平成27年度 春期 データベーススペシャリスト試験 午前Ⅱ 問9
- ア店 A A B B B C D
- イ店 A B C D
- ウ店 B
- エ店 E
正解:ウ
解説
関係演算の除算(R÷S)は,関係Rのうち,関係Sに含まれる全ての値の組合せをもつ属性値(この場合は店)だけを取り出す演算である。Rにおいて各店が扱う商品を見ると,A店は{a,b},B店は{a,b,c},C店は{c},D店は{c,d},E店は{d,e}である。Sは{a,b,c}であるため,Sの商品を全て扱っているのはB店だけである。したがって,R÷Sの結果はB店だけを含む関係になる。
選択肢ごとの解説
- ア誤り。これはRのうち商品がa,b,cのいずれかである行を店について射影しただけの結果(A,A,B,B,B,C,D)であり,重複が除去されておらず,Sの商品を全て扱っている店だけを求める除算の結果ではない。
- イ誤り。アの結果から重複を除去しただけであり(A,B,C,D),Sに含まれる商品を一つでも扱っている店を全て含んでしまっている。除算はSの商品を全て扱う店を求める演算であり,一部しか扱わない店(A,C,D)を含めるのは誤りである。
- ウ正しい。R÷Sは,Sに含まれる商品(a,b,c)を全て扱っている店を求める演算である。R上でSの全商品を扱っているのはB店だけであり,結果はB店のみとなる。
- エ誤り。E店が扱う商品はd,eであり,Sに含まれる商品を一つも扱っていない。したがって,Sの商品を全て扱う店を求める除算の結果に,E店が含まれることはない。