応用情報技術者平成23年特別 午前問30

問30

"社員"表と"人事異動"表から社員ごとの勤務成績の平均を求める適切なSQL文はどれか。ここで,求める項目は,社員コード,社員名,勤務成績(平均)の3項目とする。
30.png/image-size:426×253
  • 30a.png/image-size:464×71
  • 30i.png/image-size:464×77
  • 30u.png/image-size:464×90
  • 30e.png/image-size:464×91

分類

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

正解

解説

社員ごとの勤務成績の平均を求める手順は以下の通りです。
  1. 社員表と人事異動表を社員コードで結合する。
    30_1.png/image-size:560×115
  2. 社員コード及び社員名でグループ化する。
    30_2.png/image-size:560×115
  3. AVG(勤務成績)で社員ごとの勤務成績(平均)を算出し、社員コード、社員名ととも表示する。
    30_3.png/image-size:213×66
これらの手順が適切に指定されている「イ」が正解です。
  • GROUP BY句で未指定である社員コード、社員名をSELECT文で指定しているため構文エラーになります。
  • 正しい。
  • 「AVG(勤務成績)」で求めた平均値を「COUNT(勤務成績)…グループごとの行数」で除しているため不適切です。もし、この部分が「SUM(勤務成績)/COUNT(勤務成績)」ならば適切な結果が得られるはずです。
  • 「MAX(勤務成績)」で求めた最大値を「COUNT(*)…グループごとの行数」で除しているため不適切です。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop