グループごとにまとめる GROUP BY句

データベース

指定したカラムの値に注目してレコードをグループに分けることが出来ます。先のグループ関数と組み合わせてグループごとの集計を行うことが出来ます。

グループ化にはGROUP BY句を使います。

GROUP BY句の書式

GROUP BY カラム名 [ ,カラム名… ]

カラム名はカンマ区切りで複数記述することが出来ます。最初に書いたカラムの値が同じものをグループ化し、さらにそれぞれのグループの中で2番目のカラムの値が同じものをグループ化し…となります。

GROUP BY句の例

SQL
SELECT subject AS `科目` ,ROUND(AVG(score),1) AS `平均点` 
    FROM examination GROUP BY subject;

グループ化をする場合、グループ化に使用したカラムおよびグループ関数による計算結果のみ表示することが出来ます。

実行結果

練習問題

テーブルexaminationについて、以下の結果を得るSQLを記述しなさい。

1.学生(student_id)ごとに平均点(scoreの平均値)を求める。平均値は小数第1位までで四捨五入すること。

2.科目(subject)ごとに受験者数(レコード数)を求める。

コメント

タイトルとURLをコピーしました