集計クエリ

GROUP BY句

GROUP BY句は、グループごとに合計値や最大値を求めるもの。

グループごとに、次のような集合関数を用いる。


集合関数 意味
SUM(フィールド名) フィールドの値の合計を求める。
AVG(フィールド名) フィールドの値の平均を求める。
MAX(フィールド名) フィールドの値の最大値を求める。
MIN(フィールド名) フィールドの値の最小値を求める。
COUNT(フィールド名) フィールドの値のNULLではないレコードの総数を求める。
COUNT(*) レコードの総数を求める。


例えば、次のような社員表があるとする。


社員表

                                                                       
社員番号 所属部署氏名年齢
0000001 営業部 田中奈津美28
0000002 開発部 山田礼子30
0000003 開発部 安藤徹25
0000004 営業部 山下幸一37
0000005 営業部 長谷川薫24
0000006 開発部 遠藤渉29


社員表の所属部署をグループ化して、部署ごとの所属人数と平均年齢を集計する場合、次のように記述する。

SELECT 所属部署,COUNT(*),AVG(年齢)
FROM 社員表
GROUP BY 所属部署;

部署ごとの所属人数と平均年齢

                                            
所属部署COUNT(*)AVG(年齢)
営業部 329.7
開発部328

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です