ホーム > データベーススペシャリスト試験 > 2024年

データベーススペシャリスト試験 2024年 午前211


関係R, Sに次の演算を行うとき, RとSが和両立である必要のないものはどれか。
共通集合
差集合
直積(正解)
和集合

解説

解説:関係R, Sの和両立と演算の関係について

関係データベース理論において、和両立 (disjointness) とは2つの関係RとSの間に「同じタプルが存在しない」ことを意味します。つまり、
RS=R \cap S = \emptyset
が成立するときに、RとSは和両立であるといいます。

問題の趣旨

和両立が必要のないものとは、「その演算を行うためにRとSが和両立である必要がない操作」を指します。選択肢ごとに和両立の条件と関係を考えてみましょう。

各選択肢の意味と和両立の必要性

ア: 共通集合 (Intersection)

  • 意味
    2つの関係の共通部分を取る操作。
    RSR \cap S
  • 和両立の必要性
    共通集合はRとSの重複がある部分を求めるため、そもそも重複がなければ共通集合は空集合です。しかし、この操作を行うのに和両立の前提は不要です。
    → 和両立である必要はない。

イ: 差集合 (Difference)

  • 意味
    RからSに含まれるタプルを除く操作。
    RS={tRtS}R - S = \{t \in R \mid t \notin S\}
  • 和両立の必要性
    差集合を定義するには「RとSが重複していても問題ありません」。和両立は不要

ウ: 直積 (Cartesian Product)

  • 意味
    Rの各タプルとSの各タプルの組み合わせをすべて取る操作。
    R×S={(r,s)rR,sS}R \times S = \{(r, s) \mid r \in R, s \in S\}
  • 和両立の必要性
    直積はタプルが組み合わされる仕様上、RとS内の重複とは基本的に無関係。重複があってもなくても演算は成立するため、和両立は必要ない
    これが正解

エ: 和集合 (Union)

  • 意味
    RとSどちらかに属するタプルを集める操作。
    RS={ttR または tS}R \cup S = \{t \mid t \in R \text{ または } t \in S\}
  • 和両立の必要性
    一般的に関係の和集合を定義するとき、特に重複があるタプルはひとつだけ保持するため、RとSは和両立(重複なし)であることが望ましい。そうでないと意味のある和を取るのが難しくなる。
    したがって、和集合を考える際は和両立が必要であると言える。

まとめ

選択肢和両立必要?理由
ア(共通集合)不要共通集合は重複確認なのでどちらでも良い
イ(差集合)不要差集合は和両立不要で成立
ウ(直積)不要 (正解)直積はRとSの重複に依存しないため必要なし
エ(和集合)必要重複除去に必要なので和両立が望ましい
この中で「和両立である必要のないもの」はウ: 直積です。

まとめ

  • 和両立とは:二つの関係が重複しないこと
  • 和両立が必要か否かは演算の性質による
  • 直積は和両立の必要がないため、正解は「ウ」となる

ご理解いただけましたでしょうか?
← 前の問題へ次の問題へ →

©︎2025 情報処理技術者試験対策アプリ