初級シスアドSQL過去問題解説

解答:ウ

論理演算子(AND、OR、NOT)の意味が理解できていれば解答できる問題である。

初級シスアドの試験において論理演算子は、SQLや表計算において複数の条件を記述するときに用いる。

論理演算子について押さえておくポイントは次の二つである。

  • 論理演算子の意味
  • 論理演算子の優先順位

SQLにおける論理演算子の表記と意味は次のとおりである。

論理演算子の意味
論理演算子表記意味
ANDAND条件1と条件2の両方の条件を満たしている(かつ
OROR条件1と条件2いずれかの条件を満たしている(または
NOT<>条件の否定(〜でない

スポンサードリンク

論理演算子の優先順位は、NOT > AND > ORの順である。ただし、カッコがあればカッコ内が優先される。この考え方は四則演算と同じである。

解答群のア〜エのSELECT文において共通の部分の意味はつぎのとおりである。

SELECT 社員番号,給与
社員番号と給与の列を抽出する
FROM 社員
社員表より

抽出条件(WHERE句)から実行結果を考える。

ア WHERE 部門 = 'C41' AND 部門 = 'C58'
「部門が'C41'かつ部門が'C58'」のデータが抽出される。社員の表を見れば分かるように、該当するデータはない。
イ WHERE 部門='C41' OR 部門='C58'
「部門が'C41'または部門が'C58'」のデータが抽出される。したがって、実行結果は次のようになる。
実行結果
社員番号給与
120010
130030
220030
ウ WHERE 部門 <> 'C41' AND 部門 <> 'C58'
「部門が'C41'でない かつ 部門が'C58'でない」のデータが抽出される。したがって、実行結果は次のようになる。
実行結果
社員番号給与
011120
150020
エ WHERE 部門 <> 'C41' OR 部門 <> 'C58'
「部門が'C41'でない または 部門が'C58'でない」のデータが抽出される。したがって、実行結果は次のようになる。
実行結果
社員番号給与
11120
120010
130030
150020
220030