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

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

平成23年度特別解答

問題6

次のSQL文によって“会員”表から新たに得られる表はどれか。

解答:ウ

<解説>

このSQL文では、会員表からグループ(GROUP BY グループ)ごとに年齢の平均値(AVG(年齢))を求め、グループの人数が一人より大きい(HAVING COUNT(*)>1)行を選択する。

  • グループAの会員は1人で平均年齢は60歳である。
    →グループの会員数が1人なので対象となる。
  • グループBの会員は2人で平均年齢は30歳((20+40)÷2)である。
    →グループの会員数が2人なので対象となる。
  • グループCの会員は3人で平均年齢は40歳((30+40+50)÷3)である。
    →グループの会員数が3人なので対象となる。

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

問題へ

問題7

地域別に分かれている同じ構造の三つの商品表、“東京商品”、“名古屋商品”、“大阪商品”がある。 次の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句により和集合するので、(大阪商品-東京商品)∪(名古屋商品-東京商品)=(大阪商品∪名古屋商品)-東京商品となる。

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

問題へ

問題8

“取引先”表、“商品”表、“注文”表の3表を基底表とするビュー“注文123”を操作するSQL文のうち、実行できるものはどれか。 ここで、各表の列のうち下線のあるものを主キーとする。

DELETE FROM 注文123 WHERE 取引先ID = '111'
INSERT INTO 注文123 VALUES (8,'目白商店','レンチ',3)
SELECT 取引先.名称 FROM 注文123
UPDATE 注文123 SET 数量 = 3 WHERE 取引先 = '目白商店'

解答:エ

<解説>

× 取引先IDはビューの列名に存在しない。
× ビューの列数は3,追加しようとしている列数は4なのでエラーとなる。
× 取引先.名称列は存在しないのでエラーとなる。
実行できる。注文表の取引先が '目白商店'の数量が変更される。

問題へ

問題9

関係Rと関係Sから、関係代数演算R÷Sで得られるものはどれか。 ここで、÷は商の演算を表す。

解答:エ

<解説>

関係代数演算R÷Sの計算は、次の条件のものが選択される。

  • 関係Rから関係SのX,Yのデータの組が一致
  • Zの値が同じもののデータ列

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

問題へ

問題10

関係データモデルにおいて属性A、Bを考える。 属性Aのドメイン(定義域)はm 個の要素から成る集合であり、属性Bのドメインはn 個の要素から成る集合であるとする。 関係RをR(A,B)とすると、Rには最大何個のタプルがあるか。

2m 2n
m + n )2
m + n
mn

解答:エ

<解説>

Rの最大タプル数は、直積Aの要素数×Bの要素数に等しい。

したがって、(エ)mnが正解である。

問題へ