データベース

基本情報技術者試験 科目A免除 修了試験 20250608 実施分 問20

国語と数学の試験を実施し,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)

出典:基本情報技術者試験 科目A免除 修了試験 20250608 実施分 問20

答えと解説を見る

正解:ウ

覚える知識

排他的論理和をAND/OR/NOTで表すWHERE条件

A XOR B は (A OR B) AND NOT (A AND B) と等価である。

この問題で必要なこと

どちらか一方のみ成立=(A OR B) AND NOT (A AND B)。排他的論理和をAND/OR/NOTで表す。

ひっかけ

他の選択肢は恒偽や矛盾する条件で、少なくとも一方が満たす条件を表せない。

この知識の出題:本試験系 0 回・免除試験 5 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「SQLの検索条件(WHERE・LIKE・IN・EXISTS)」で学ぶ

同じ知識の過去問