令和5年度 秋期 午前Ⅱ 問11
データ操作
関係代数に関する問題
関係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 |
選択肢は原典では列「店」だけの表。
- ア店:A,A,B,B,B,C,D
- イ店:A,B,C,D
- ウ店:B
- エ店:E
答えと解説を見る
✓ これが正解ウ店:B
解説
S の商品 a、b、c をすべて扱う店は B だけです。
商演算 R÷S は、S に含まれる値の組をすべて持つ R の残りの属性の値を求める演算です。この問では、商品 a、b、c の三つを全部扱っている店を探すことになります。R を店ごとに見ると、A は a と b、B は a と b と c、C は c、D は c と d、E は d と e を扱っています。a、b、c のすべてがそろっているのは B だけなので、結果は店 B の1行です。A は c を、C と D は a と b を欠いています。見分ける軸は、S の値を一つでも持てばよいのか、全部を持つ必要があるのかです。商演算は、すべてを満たすものを求める演算と覚えておくと、一部でも持つものを集めた結果を外せます。
ほかの選択肢はなぜ違うのか
- ア店:A,A,B,B,B,C,D:この並びは、R の行のうち商品が a、b、c のどれかである行の店を、重複を残したまま並べたものです。S の値を一つでも持つ行を集めただけで、全部をそろえているかを確かめていません。
- イ店:A,B,C,D:A、B、C、D は、商品 a、b、c のうち少なくとも一つを扱う店です。一部でも持てば含めるという条件で選んでおり、三つ全部をそろえることを求める商演算の結果にはなりません。
- エ店:E:E は d と e だけを扱い、S の商品 a、b、c を一つも扱っていない店です。商演算の結果とは逆に、S と重ならない店を選んだ形になっています。
出典:令和5年度 秋期 データベーススペシャリスト試験 午前Ⅱ 問11
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)