IPA過去問ドリル

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

テクノロジ/データベース

“人事”表に対して次の SQL 文を実行したとき,結果として得られる社員番号はどれか。 (注:本サイトでは原問題の表を文字表記に変換しています) 人事表 社員番号(主キー)|所属|勤続年数|年齢 1|総務部|13|31 2|総務部|5|28 3|人事部|11|28 4|営業部|8|30 5|総務部|7|29 〔SQL 文〕 SELECT 社員番号 FROM 人事 WHERE(勤続年数 > 10 OR 年齢 > 28) AND 所属 = '総務部'

出典:令和6年度 春期 情報処理安全確保支援士試験 午前Ⅱ 問21

正解:エ

解説

設問の SQL 文は,勤続年数が 10 年を超える,又は年齢が 28 歳を超える従業員のうち,所属が総務部である社員番号を抽出します。人事表の各行を確認すると,社員番号 1(総務部,勤続13年,31歳)は勤続年数が10を超えるため条件を満たします。社員番号 2(総務部,勤続5年,28歳)は勤続年数・年齢ともに条件を満たしません。社員番号 3(人事部)と 4(営業部)は所属が総務部でないため除外されます。社員番号 5(総務部,勤続7年,29歳)は年齢が28を超えるため条件を満たします。したがって,抽出される社員番号は 1,5 です。

選択肢ごとの解説

  • 誤り。社員番号 2 は勤続年数・年齢のいずれも条件を満たさないため抽出されません。
  • 誤り。社員番号 3,4 は所属が総務部ではないため抽出されません。
  • 誤り。社員番号 3 は所属が総務部ではないため抽出されません。
  • 正しい。条件を満たす総務部の社員は,勤続年数が10を超える社員番号1と,年齢が28を超える社員番号5であり,結果は1,5です。
情報処理安全確保支援士の過去問を演習モードで解く