必ず受かる情報処理技術者試験

当サイトは、情報処理技術者試験に合格するためのWebサイトです。
ITパスポート試験,基本情報技術者,応用情報技術者,高度試験の過去問題と解答及び詳細な解説を掲載しています。
  1. トップページ
  2. データベーススペシャリスト
  3. 平成23年度特別問題一覧
  4. 平成23年度特別問題7-解答・解説-分析

平成23年度特別問題

問題7

地域別に分かれている同じ構造の三つの商品表、“東京商品”、“名古屋商品”、“大阪商品”がある。 次のSQL文と同等の結果が得られる関係代数式はどれか。 ここで、三つの商品表の主キーは“商品番号”である。 また、X -Y はX からY の要素を除いた差集合を表す。

SELECT * FROM 大阪商品
      WHERE 商品番号 NOT IN (SELECT 商品番号 FROM 東京商品)

UNION

SELECT * FROM 名古屋商品
      WHERE 商品番号 NOT IN (SELECT 商品番号 FROM 東京商品)

(大阪商品 ∩ 名古屋商品)-東京商品
(大阪商品 ∪ 名古屋商品)-東京商品
東京商品-(大阪商品 ∩ 名古屋商品)
東京商品-(大阪商品 ∪ 名古屋商品)

地域別に分かれている同じ構造の三つの商品表、“東京商品”、“名古屋商品”、“大阪商品”がある。 次のSQL文と同等の結果が得られる関係代数式はどれか。 ここで、三つの商品表の主キーは“商品番号”である。 また、X -Y はX からY の要素を除いた差集合を表す。

SELECT * FROM 大阪商品
      WHERE 商品番号 NOT IN (SELECT 商品番号 FROM 東京商品)

UNION

SELECT * FROM 名古屋商品
      WHERE 商品番号 NOT IN (SELECT 商品番号 FROM 東京商品)

(大阪商品 ∩ 名古屋商品)-東京商品
(大阪商品 ∪ 名古屋商品)-東京商品
東京商品-(大阪商品 ∩ 名古屋商品)
東京商品-(大阪商品 ∪ 名古屋商品)

解答:イ

<解説>

UNION句は、別々のSELECT文による抽出結果を統合する。

1つ目のSELECT文により、大阪商品から東京商品にある行を除外した行,つまり(大阪商品-東京商品)が抽出される。

2つ目のSELECT文により、名古屋商品から東京商品にある行を除外した行,つまり(名古屋商品-東京商品)が抽出される。

これらをUNION句により和集合するので、(大阪商品-東京商品)∪(名古屋商品-東京商品)=(大阪商品∪名古屋商品)-東京商品となる。

したがって、正解はイである。