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

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

平成17年度春季問題

問題60

国語と数学の試験を実施し、2教科の成績は氏名とともに“得点”表に記録されている。1教科は平均点以上で、残りの1教科は平均点未満の生徒氏名を“得点”表から抽出する SQL 文はどれか。ここで、条件文 A と条件文 B には、それぞれ次の条件が与えられているものとする。

[条件文]
A 国語の点数が国語の平均点以上
B 数学の点数が数学の平均点以上
SELECT 生徒氏名 FROM 得点
WHERE (A AND B) AND NOT (A AND B)
SELECT 生徒氏名 FROM 得点
WHERE (A AND B) AND NOT (A OR B)
SELECT 生徒氏名 FROM 得点
WHERE (A OR B) AND NOT (A AND B)
SELECT 生徒氏名 FROM 得点
WHERE (A OR B) AND NOT (A OR B)

国語と数学の試験を実施し、2教科の成績は氏名とともに“得点”表に記録されている。1教科は平均点以上で、残りの1教科は平均点未満の生徒氏名を“得点”表から抽出する SQL 文はどれか。ここで、条件文 A と条件文 B には、それぞれ次の条件が与えられているものとする。

[条件文]
A 国語の点数が国語の平均点以上
B 数学の点数が数学の平均点以上
SELECT 生徒氏名 FROM 得点
WHERE (A AND B) AND NOT (A AND B)
SELECT 生徒氏名 FROM 得点
WHERE (A AND B) AND NOT (A OR B)
SELECT 生徒氏名 FROM 得点
WHERE (A OR B) AND NOT (A AND B)
SELECT 生徒氏名 FROM 得点
WHERE (A OR B) AND NOT (A OR B)

解答:ウ

<解説>

問題文の条件から、「1教科は平均点以上」、「残りの2教科は平均点未満」の生徒氏名を抽出することになる。

最初の条件はどちらかが平均点以上ということで、A OR B になる。 また、2つ目の条件は2科目とも平均点以上の否定になるので、 A AND B の否定になる。

よって、WHERE (A OR B) AND NOT (A AND B) となる。