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

解答:イ

問題文より表Aから表Bを得るためのSELECT文を考える。「表B」より抽出する列は以下の3つである。

  • 名前
  • 職業
  • 趣味

抽出条件は、「19歳以下又は26歳以上の女性」である。言い換えると、「19歳以下の女性または26歳以上の女性」ということである。

  • 19歳以下の女性
  • 26歳以上の女性

以上からSELECT文を作ればよい。SELECT文は以下のようになる。

SELECT 名前,職業,趣味
FROM 表A
WHERE 年齢 <=19 AND 性別='女’OR 年齢 >=26 AND 性別='女'

スポンサードリンク

解答群にはこのSELECT文に該当するものがない。解答群のイのWHERE句を見ると、 「年齢<=19」 と 「年齢<20」は同じ意味である。 同様に「年齢>=26」と「年齢>25」も同じ意味である。したがって、イが正解である。

別の解き方として、解答群のSELECT文の実行結果を1つずつ見ていき「表B」が得られるものを見つけるという方法もある。この解き方は 初級シスアドSQL過去問題(平成9年 午前 問48)の解説を参考にして欲しい。どちらを使っても構わないが、可能であれば問題文よりSELECT 文を作る方が早く解答できる。

類題
初級シスアドSQL過去問題(平成9年 午前 問48)