MySQL

MySQL 集計関数

2017年3月10日

MySQL で利用できる集計関数の一覧です。

関数 機能
AVG 平均値を計算する
COUNT レコード数を計算する
MAX 最大値を調べる
MIN 最小値を調べる
SUM 合計値を計算する

下記テーブルを例に、これら集計関数を利用してみましょう。

SELECT * FROM person;
+----+-------+------+--------+---------+
| id | name  | age  | gender | dept_no |
+----+-------+------+--------+---------+
|  1 | kai   |   27 |      1 |       1 |
|  2 | gerda |   25 |      2 |       2 |
|  3 | ragi  |   33 |      1 |       1 |
+----+-------+------+--------+---------+
AVG 関数
AVG 関数で平均年齢を求めます。
SELECT AVG(age) FROM person;
+----------+
| AVG(age) |
+----------+
|  28.3333 |
+----------+
COUNT 関数
COUNT 関数で、person テーブルのレコード数を求めます。
SELECT COUNT(*) FROM person;
+----------+
| COUNT(*) |
+----------+
|        3 |
+----------+

MAX 関数
MAX 関数で一番年上を求めます。
SELECT MAX(age) FROM person;
+----------+
| MAX(age) |
+----------+
|       33 |
+----------+
MIN 関数
MIN 関数で一番年下を求めます。
SELECT MIN(age) FROM person;
+----------+
| MIN(age) |
+----------+
|       25 |
+----------+
SUM 関数
今回のテーブルではあまり意味はないかもしれませんが、SUM 関数で全員の延べ年齢を求めてみます。
SELECT SUM(age) FROM person;
+----------+
| SUM(age) |
+----------+
|       85 |
リファレンス
12.19.1 GROUP BY (集約) 関数

-MySQL