平成31年春期試験問題 午前問27

問27解説へ
"中間テスト"表からクラスごと,教科ごとの平均点を求め,クラス名,教科名の昇順に表示するSQL文中のaに入れる字句はどれか。
中間テスト(クラス名,教科名,学生番号,名前,点数)
〔SQL文〕
中間テスト(クラス名,教科名,学生番号,名前,点数)
〔SQL文〕
SELECT クラス名,教科名,AVG(点数) AS 平均点
FROM 中間テスト
a
FROM 中間テスト
a
- GROUP BY クラス名,教科名 ORDER BY クラス名,AVG(点数)
- GROUP BY クラス名,教科名 ORDER BY クラス名,教科名
- GROUP BY クラス名,教科名,学生番号 ORDER BY クラス名,教科名,平均点
- GROUP BY クラス名,平均点 ORDER BY クラス名,教科名
広告
解説
クラスごと、教科ごとの平均点を求めるので、

GROUP BY クラス名,教科名
でグループ化します。さらに表示はクラス名、教科名の昇順に行うので、ORDER BY クラス名,教科名
というように整列優先順位の高い属性順に指定します。- 表示順が、クラス名、平均点の順になってしまうため誤りです。
- 正しい。
- GROUP BY句に学生番号を指定すると、クラス・教科・学生ごとの集計になってしまうため誤りです。
- クラス名でしかグループ化していないので、教科ごとの集計ができません。また、GROUP BY句で未指定の"教科名"列をSELECT句で指定しているため構文エラーとなります。

広告