DBデータベーススペシャリスト試験 午前Ⅱ

平成23年度特別 データベーススペシャリスト 午前Ⅱ 問9

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

関係Rと関係Sから,関係代数演算R÷Sで得られるものはどれか。ここで,÷は商の演算を表す。
関係Rと関係Sの入力表,及び商演算の結果として提示された四つの表。
関係Rと関係Sの入力表,及び商演算の結果として提示された四つの表。

選択肢

  1. ア
    図ア
  2. イ
    図イ
  3. ウ
    図ウ
  4. エ
    図エ
解き方のヒントを見る

関係を見極めるための確認視点

商演算を考えるときは、対象同士の結び付きが何を基準に整理され、どの範囲を満たす関係として扱われているかに注目し、用語の役割を丁寧に読み分けましょう。

この問題で問われていること

一つの対象が複数の条件や関係とどう結び付くかを確認し、その結び付きを全体として捉える視点が、設問中の説明と整合しているかを読み取りましょう。

視点

関係を整理する演算では、対象の組み合わせ方と条件のまとまりを区別して考えます。個々の値だけでなく、関係全体が表す役割に着目してください。

確認ポイント

  • 対象同士の結び付き方を確認する
  • 条件がどの対象に関係するかを整理する
  • 説明全体の役割が一貫しているかを確かめる
正解と解説を見る

正解

エ

解説

関係除算R÷Sでは、Sに含まれるすべての(X、Y)の組合せと組み合わせてもRに存在するZの値を求めます。Sには(a、1)と(b、2)があり、両方に対応するZは甲だけです。

理由

Sの組は(a、1)と(b、2)です。RでZが甲の行にはこの二つが存在します。一方、Zが乙の行は(a、1)だけ、Zが丙の行は(b、2)だけなので、Sの全組を満たすのは甲です。

比較

したがって結果は属性Zだけを持つ関係となり、その内容は甲です。Rの一部をそのまま残すのではなく、Sの全組合せに対応できるZを選ぶ点が、関係除算の特徴です。

選択肢ア

これは不正解だよ。図アはRのうちZが甲の行を、元のXとYを含めた形で示しています。しかしR÷Sでは、Sの全ての組合せに対応するZを結果として取り出すため、Rと同じ三属性の表にはなりません。

選択肢イ

これは不正解だよ。図イはZの乙と丙を示していますが、乙はSの(a,1)にしか対応せず、丙はSの(b,2)にしか対応しません。Sにある二つの組合せを両方満たすZを示していないため、除算の結果とは一致しません。

選択肢ウ

これは不正解だよ。図ウはZの甲、乙、丙を全て含めています。関係除算はRに現れるZを全て取り出す演算ではなく、Sの全ての組合せに対応するZだけを残す演算です。乙と丙は条件を満たしません。

選択肢エ(正解)

これは正解だよ。Sには(a,1)と(b,2)があるため、Rの同じZについて両方の組合せが存在するかを確認します。甲には二つとも対応する行がありますが、乙と丙には一方しかないので、結果は属性Zの甲になります。

学習のポイント

関係除算は「すべての条件を満たす値」を抽出する演算として理解します。

出典:独立行政法人 情報処理推進機構(IPA)平成23年度特別 データベーススペシャリスト試験 午前Ⅱ 問9(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針