ソフトウェア開発技術者平成19年春期 午前問63

問63

地域別に分かれている同じ構造の三つの商品表,"東京商品","名古屋商品","大阪商品"がある。次のSQL文と同等の結果が得られる関係式はどれか。ここで,三つの商品表の主キーは"商品番号"である。また,X-YはXからYの要素を除いた差集合を表す。
63.png/image-size:425×88
  • (大阪商品∩名古屋商品)-東京商品
  • (大阪商品∪名古屋商品)-東京商品
  • 東京商品-(大阪商品∩名古屋商品)
  • 東京商品-(大阪商品∪名古屋商品)
  • [出題歴]
  • 応用情報技術者 H25秋期 問31

分類

テクノロジ系 » データベース » データ操作

正解

解説

IN句は続く"()"の中のリストに指定された値があるかを比較する演算子です。この設問の場合ではIN句の条件にSELECT文を使用しているのでSELECT文の結果がIN句で使用されるリストになります。

UNION句の前後のSQL文を解釈すると次のようになります。
63_1.png/image-size:425×35
"東京商品"表に含まれていない"大阪商品"表の行を抽出するSQL文です。
63_2.png/image-size:425×35
"東京商品"表に含まれていない"名古屋商品"表の行を抽出するSQL文です。

上記の2つのSQL文の結果で集合で表します。さらにUNION句は前後のSQL文の和集合を返す演算子なのでこのSQL文は次の集合を返します。
63_3.png/image-size:484×121
これは大阪商品と名古屋商品の和集合(∪)から東京商品を引いたもの(-,差集合)なので「(大阪商品∪名古屋商品)-東京商品」が適切です。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop