情報処理安全確保支援士令和6年春期 午前Ⅱ 問21

問21

"人事"表に対して次のSQL文を実行したとき,結果として得られる社員番号はどれか。
21.png/image-size:274×176
〔SQL文〕
SELECT 社員番号 FROM 人事
 WHERE (勤続年数 > 10 OR 年齢 > 28)
 AND 所属 = '総務部'
  • 1,2,5
  • 1,3,4,5
  • 1,3,5
  • 1,5

分類

テクノロジ系 » データベース » データ操作

正解

解説

設問のSQL文は次のように処理されていきます。
  1. 人事表からWHERE句の条件に合致する行を選択する
  2. 選択された行のリストから、SELECT句で社員番号列を抜き出す
WHERE句の条件は、①勤続年数が10超または年齢が28超、かつ、②所属が総務部となっています。条件①に合致するのは社員番号1、3、4、5の行、条件②に合致するのは社員番号1、2、5の行なので、両方の条件に合致する社員番号1、5の2つの行がWHERE句で選択されます。

こうして選択された行のリストから社員番号列を抜き出すため、結果として得られる社員番号は1、5となります。したがって「エ」が正解です。
© 2014-2024 情報処理安全確保支援士ドットコム All Rights Reserved.

Pagetop