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

令和2年度10月 データベーススペシャリスト 午前Ⅱ 問9

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

問題

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

選択肢

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

直積を考えるときの対応関係

直積を含む関係代数の問題では、個々の関係を別々に見るだけでなく、組み合わせによって結果の各要素が何に対応するかを一貫して確認し、用語の印象だけで結論を急がないようにします。

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

一つの観点として、入力となる関係の要素と、組み合わせ後に現れる要素の対応を追い、対象の取り違えや見落としがないか、問題中の条件と照らし合わせて確認してください。

視点

関係を構成する要素を整理し、操作の前後でどの対象同士の対応を追うべきかを確認します。名称や見た目だけで判断せず、問題中の定義と条件に沿って関係を捉えることが大切です。

確認ポイント

  • 組み合わせの対象となる関係を、問題文の記号や条件に沿って整理できているか。
  • 操作の前後で、各要素がどの対象に対応しているかを同じ基準で追えているか。
  • 表面的な語句ではなく、関係の定義と与えられた条件の対応から判断しているか。
正解と解説を見る

正解

エ

解説

直積は、二つの関係からそれぞれ一つずつタプルを取り出し、可能な全組合せを作る関係代数の演算です。条件による選択や属性の限定とは異なります。

理由

関係代数における直積は、二つの関係のタプルを一つずつ組み合わせ、条件を追加せずに全ての組合せを生成する演算です。したがって、結果は両方の関係の属性を合わせたタプルの集合になります。

比較

条件を満たすタプルだけを残すのは選択、指定した属性だけを残すのは射影です。また、二つの関係を指定条件で組み合わせる説明は結合に当たり、条件なしで全組合せを作る直積とは異なります。

選択肢ア

これは不正解だよ。ある属性の値に条件を付け、その条件を満たすタプルだけを残す操作は、直積ではなく選択に該当する。直積は、条件で対象を絞り込む操作ではないため、この説明とは一致しない。

選択肢イ

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

選択肢ウ

これは不正解だよ。二つの関係のタプルを指定された属性間の条件で組み合わせる説明は、結合の考え方に当たる。直積では、あらかじめ指定された属性間の条件を満たすものだけに限定することはない。

選択肢エ(正解)

これは正解だよ。直積は、二つの関係からそれぞれ一つずつタプルを取り出し、それらの全ての組合せを集合として生成する演算である。結合条件などによる絞込みを行わない点が定義に一致する。

学習のポイント

選択・射影・結合・直積の定義を、対象がタプルか属性かにも注目して比較する。

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

関連する過去問一覧

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