修了試験 2013-06-23実施分 基本情報技術者試験 問33
国語と数学の試験を実施し,2教科の成績は氏名とともに“得点”表に記録されている。 1教科は平均点以上で,残りの1教科は平均点未満の生徒氏名を“得点”表から抽出するSQL文はどれか。 ここで,条件文Aと条件文Bには,それぞれ次の条件が与えられているものとする。 〔条件文〕 A 国語の点数が国語の平均点以上 B 数学の点数が数学の平均点以上
正答3
解説
正解は3です。 「1教科は平均点以上で、残りの1教科は平均点未満」とは、AとBのうちちょうど一方だけが成り立つ場合です。 これは排他的論理和で、「AまたはBが成り立ち、かつAとBの両方が成り立つことはない」と表せます。 【選択肢別解説】 1:× (A AND B) AND NOT (A AND B)は、同じ条件の肯定と否定を同時に求めています。 常に偽になり、1人も抽出されません。 2:× (A AND B) AND NOT (A OR B)は、両方以上なのに、どちらも以上でないことを求めています。 常に偽になります。 3:○ (A OR B)で少なくとも一方が平均以上の生徒に絞り、NOT (A AND B)で両方とも平均以上の生徒を除きます。 残るのはちょうど1教科だけ平均以上の生徒です。 4:× (A OR B) AND NOT (A OR B)は、同じ条件の肯定と否定を同時に求めています。 常に偽になり、1人も抽出されません。 【ポイント】 排他的論理和(XOR)は「(A OR B) AND NOT (A AND B)」で表せます。 「(A AND NOT B) OR (NOT A AND B)」と書いても同じ意味になります。まとめて解く
修了試験 2013-06-23実施分を通しで解く(80問)→