GROUP BY句を使用して、問い合わせ結果をグループ化し集計する方法を解説します。
構文
GROUP BY column_name1 [, column_name2]...
column_name1: グループ化するカラム1
column_name2: グループ化するカラム2
サンプルプログラム
name | age | department_id
---------+-----+---------------
Taro | 23 | 5
Hanako | 23 | 4
Jiro | 22 | 5
Haruo | 42 | 2
Natsuko | 35 | 1
Akio | 28 | 5
Fuyumi | 26 | 3
-- employeeテーブルのレコードをdepartment_idでグループ化しdepartment_id, countを参照
SELECT department_id, COUNT(*) FROM employee GROUP BY department_id;
■出力結果
department_id | count
---------------+-------
3 | 1
5 | 3
4 | 1
2 | 1
1 | 1
補足情報
GROUP BY句を使用する場合、SELECT句に指定できる要素がGROUP BY句のカラムや集合関数( COUNTやSUMなど )、定数式に限られる点に注意しましょう。
コメント