SQL

【SQL】SELECT MAXの使い方(最大値)

SELECT MAXの基本構文

SQLのMAX関数を使うことで、その列の最大値を取得することができます。

MAXの基本構文

SELECT  MAX(列名)  FROM  表名;

 

本記事では、MAX関数を使用した最大値を取得する方法を解説していきます。

また「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

指定列の最大値を取得する

「SELECT  MAX(列名)」で、指定した列名の最大値を取得することができます。

次の例では、年齢 (age)の最大値を取得しています。

■MAX(列名)の使用例

SELECT MAX(age) FROM user;

■実行結果

+----------+
| MAX(age) |
+----------+
|       44 |
+----------+
1 row in set (0.01 sec)

グループ化して最大値を取得する

GROUP BY句を用いてグループ化することで、グループ化ごとの最大値を求めることができます。

次の例では、部署ID (department_id)でグループ化し、同じ部署内で年齢 (age)が一番高い人の名前 (name)、住所 (address)、年齢 (age)を求めています。

■GROUP BYを用いたMAX関数の使用例

SELECT 
    name, address, MAX(age), department_id
FROM 
    user 
GROUP BY 
    department_id;

■実行結果

+----------+---------+----------+---------------+
| name     | address | MAX(age) | department_id |
+----------+---------+----------+---------------+
| 鈴木一郎 | 東京都  |       44 |             1 |
| 田中三郎 | 千葉県  |       24 |             2 |
| 斎藤五郎 | 東京都  |       35 |             4 |
+----------+---------+----------+---------------+
3 rows in set (0.00 sec)

よろしければ記事の評価をお願いします

© 2021 ITを分かりやすく解説