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

平成28年度春期 データベーススペシャリスト 午前Ⅱ 問12

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

問題

関係代数における直積に関する記述として,適切なものはどれか。

選択肢

  1. ア
    ある属性の値に条件を付加し,その条件を満たす全てのタプルの集合である。
  2. イ
    ある一つの関係の指定された属性だけを残して,他の属性を取り去って得られる属性の集合である。
  3. ウ
    二つの関係における,あらかじめ指定されている二つの属性の2項関係を満たす全てのタプルの組合せの集合である。
  4. エ
    二つの関係における,それぞれのタプルの全ての組合せの集合である。
解き方のヒントを見る

入力と結果の対応を見極める視点

関係を扱う操作では、まず各入力がどのような単位で組み合わされ、結果としてどの範囲の組合せが現れるかを確認しましょう。用語の印象だけで判断せず、対象の対応関係に注目します。

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

確認の中心は、複数の関係を対象にしたとき、入力側の要素同士の対応をどのような粒度で捉えているかです。結果の見た目ではなく、組合せの成立条件を整理して比較しましょう。

視点

操作名や説明文を読んだら、個々の入力に含まれる要素を区別し、それらの間に追加の条件や対応づけが置かれているかを確認します。判断は、入力から結果へ何が保たれ、何が組み合わされるかという観点に限定すると整理しやすくなります。

確認ポイント

  • 入力となる対象をそれぞれ分けて捉える
  • 要素同士の対応に条件があるか確認する
  • 入力と結果の関係を同じ観点で比較する
正解と解説を見る

正解

エ

解説

関係代数の直積は、二つの関係からタプルを一つずつ取り出し、条件を付けずに全ての組合せを作る演算です。したがって、属性の条件選択や属性の抽出、特定条件による結合とは異なる。

理由

直積は、二つの関係RとSに対して、Rの任意のタプルとSの任意のタプルを組み合わせて得られる集合です。組合せに特定の結合条件は設けない。

比較

条件を満たすタプルだけを残す操作は選択、指定した属性だけを残す操作は射影です。また、属性間の条件を満たす組合せに限定する操作は直積そのものではありません。

選択肢ア

これは不正解だよ。ある属性の値に条件を付け、その条件を満たすタプルだけを残す操作は、直積ではなく選択に該当する。直積は特定の属性値による絞込みを定義する操作ではない。

選択肢イ

これは不正解だよ。一つの関係から指定された属性だけを残し、他の属性を取り去る操作は射影である。直積は属性を選び出す操作ではなく、二つの関係を対象にタプルを組み合わせる操作である。

選択肢ウ

これは不正解だよ。二つの関係のタプルを、あらかじめ指定された二つの属性の関係を満たすものに限定する記述は、条件付きの結合を表している。直積にはそのような条件による限定はない。

選択肢エ(正解)

これは正解だよ。直積は二つの関係を対象とし、一方の関係の各タプルと他方の関係の各タプルについて、条件を付けずに全ての組合せを作る演算である。この定義に一致している。

学習のポイント

直積は二つの関係のタプル同士を条件なしで組み合わせる演算として理解する。

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

関連する過去問一覧

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