【SQL】指定列の平均値を求める
SQLのAVG関数を使うことで、その列の平均値を求められます。
AVGの基本構文
SELECT AVG(列名) FROM テーブル名;
本記事では、AVG関数を使用した平均値を求め方について解説していきます。
また「userテーブル」には、次のようなデータが格納されていることを前提としています。
【userテーブル】
ID (id) ※PK | 名前 (name) | 住所 (address) | 年齢 (age) | 部署ID (department_id) |
1001 | 鈴木一郎 | 東京都 | 44 | 1 |
1002 | 佐藤次郎 | 埼玉県 | 32 | 1 |
1003 | 田中三郎 | 千葉県 | 24 | 2 |
1004 | 伊藤四郎 | 東京都 | 22 | 2 |
1005 | 斎藤五郎 | 東京都 | 35 | 4 |
平均値(AVG)の求め方
「SELECT AVG(列名)」で、指定した列の平均値を取得できます。
次の例では、年齢 (age)の平均値を取得しています。
■平均値(AVG)の使用例
SELECT
AVG(age)
FROM
user;
■実行結果
+----------+
| AVG(age) |
+----------+
| 31.4000 |
+----------+
1 row in set (0.00 sec)
グループ内の平均値(AVG)を取得
GROUP BY句を用いてグループ化することで、グループ内の平均値を求められます。
次の例では、部署ID (department_id)でグループ化し、部署内の平均年齢を求めています。
■GROUP BYを用いたAVG(平均値)の使用例
SELECT
AVG(age), department_id
FROM
user
GROUP BY
department_id;
■実行結果
+----------+---------------+
| AVG(age) | department_id |
+----------+---------------+
| 38.0000 | 1 |
| 23.0000 | 2 |
| 35.0000 | 4 |
+----------+---------------+
3 rows in set (0.00 sec)
helpful
この記事は役に立ちましたか?