SQL道場 集計関数 MAX関数

SQLで最大値を取得するMAX関数について記載しています。

対応データベース:SQLServer MySQL Oracle PostgreSQL DB2 SQLite Access ANSI

MAX関数の文法

SELECT MAX(列名) FROM テーブル
SELECT MAX (column name) FROM table
引数
Arguments
列名
Column name
数値型、日付型、文字列型の列を指定
Specify numeric, date, or string columns
返値
return value
数値型 最大値
Numeric maximum value

MAX関数は引数に指定された列のグループ内の最大値を取得します。GROUP BY句と併せて指定した場合は、グループごとに最大値を得ることができます。

実行例

社員テーブル(employee table)

社員名(EMP_NAME)年齢(EMP_AGE)性別(EMP_SEX)時給(EMP_SALARY)
山田太郎351,000
鈴木花子201,500
竹下次郎302,500
佐藤梅子40800
ジュン鎌田23800
田中誠二202,500

MySQLの実行例

/* MySQLで時給の最大値を求めるサンプル */
SELECT MAX(EMP_SALARY) FROM testdb.MST_EMPLOYEE;
MySQLで時給の最大値を求めるサンプル実行結果
/* MySQL年齢ごとに時給の合計を求めるサンプル */

SELECT EMP_AGE,MAX(EMP_SALARY) FROM testdb.MST_EMPLOYEE GROUP BY EMP_AGE;
MySQL年齢ごとに時給の合計を求めるサンプル実行結果

SQLServerの実行例

/* SQLServerで時給の最大値を求めるサンプル */

SELECT MAX(EMP_SALARY) FROM [testdb].[dbo].[MST_EMPLOYEE];
SQLServerで時給の最大値を求めるサンプル実行結果
/* SQLServer年齢ごとに時給の最大値を求めるサンプル */

SELECT EMP_AGE,MAX(EMP_SALARY) FROM [testdb].[dbo].[MST_EMPLOYEE] GROUP BY EMP_AGE;
SQLServer年齢ごとに時給の最大値を求めるサンプル実行結果