IPA過去問ドリル

平成22年度 春期 応用情報技術者試験 午前 問33

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

表Aから実行結果Bを得るためのSQL文はどれか。 表A(社員コード,名前,部署コード,給料) 10010,伊藤幸子,101,200000 10020,斉藤栄一,201,300000 10030,鈴木裕一,101,250000 10040,本田一弘,102,350000 10050,山田五郎,102,300000 10060,若山まり,201,250000 実行結果B(部署コード,社員コード,名前) 101,10010,伊藤幸子 101,10030,鈴木裕一 102,10040,本田一弘 102,10050,山田五郎 201,10020,斉藤栄一 201,10060,若山まり (注:本サイトでは原問題の表を文字表記に変換しています)

出典:平成22年度 春期 応用情報技術者試験 午前 問33

正解:エ

解説

実行結果Bは,部署コードの昇順に並び,さらに同じ部署コード内では社員コードの昇順に並んでいます。これはSELECT文にORDER BY 部署コード,社員コードを指定することで得られる並び順です。

選択肢ごとの解説

  • 誤り。GROUP BY 社員コードは集計処理を行う句であり,社員コードごとに1行に集約されてしまうため,表Bのような全件表示にはなりません。
  • 誤り。GROUP BY 部署コードも集計処理を行う句であり,部署コードごとに1行に集約されてしまいます。
  • 誤り。ORDER BY 社員コード,部署コードでは社員コードを優先して並べ替えるため,表Bのような部署コード優先の並び順にはなりません。
  • 正しい。ORDER BY 部署コード,社員コードとすることで,表Bのとおり部署コード,社員コードの順に並び替えられます。
応用情報技術者の過去問を演習モードで解く