基本情報技術者平成25年春期 午前問28

問28

"中間テスト"表からクラスごと,教科ごとの平均点を求め,クラス名,教科名の昇順に表示するSQL文中のaに入れるべき字句はどれか。

 中間テスト(クラス名,教科名,学生番号,名前,点数)

〔SQL文〕
SELECT クラス名,教科名,AVG(点数) AS 平均点
  FROM 中間テスト
  a
  • GROUP BY クラス名,教科名 ORDER BY クラス名,AVG(点数)
  • GROUP BY クラス名,教科名 ORDER BY クラス名,教科名
  • GROUP BY クラス名,教科名,学生番号 ORDER BY クラス名,教科名,平均点
  • GROUP BY クラス名,平均点 ORDER BY クラス名,教科名
  • [出題歴]
  • 基本情報技術者 H31春期 問27

分類

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

正解

解説

クラスごと、教科ごとの平均点を求めるので、
GROUP BY クラス名,教科名
でグループ化します。さらに表示はクラス名、教科名の昇順に行うので、
ORDER BY クラス名,教科名
というように整列優先順位の高い属性順に指定します。
  • 表示順が、クラス名、平均点の順になってしまうため誤りです。
  • 正しい。
  • GROUP BY句に学生番号を指定すると、クラス・教科・学生ごとの集計になってしまうため誤りです。
  • クラス名でしかグループ化していないので、教科ごとの集計ができません。また、GROUP BY句で未指定の"教科名"列をSELECT句で指定しているため構文エラーとなります。
28.png/image-size:311×1012
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop