問題本文
"中間テスト"表からクラスごと,教科ごとの平均点を求め,クラス名,教科名の昇順に表示する 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 クラス名,教科名
正解
イ. GROUP BY クラス名,教科名 ORDER BY クラス名,教科名
解説
クラスごと教科ごとの平均なら GROUP BY クラス名, 教科名。ORDER BY はクラス名・教科名の昇順を要求しているのでこの 2 列を指定。イが正解。
選択肢ごとの解説
- ア.ORDER BY に AVG(点数) があると平均点順となり、教科名の昇順にならない。
- イ.GROUP BY クラス名, 教科名 / ORDER BY クラス名, 教科名 で要件を満たす。正解。
- ウ.GROUP BY に学生番号を含めると学生ごとの集計になり、クラス・教科の平均にならない。
- エ.GROUP BY に平均点は集計関数の結果で意味をなさない。
基本情報技術者試験 平成31年度 春期 午前 の過去問一覧へ戻る・問27