MAX 集約関数

MAX 関数は、値の集合の最大値を戻します。

Read syntax diagramSkip visual syntax diagramMAX(ALLDISTINCTexpression)

スキーマは SYSIBM です。

expression
BLOB、CLOB、DBCLOB、ROWID、または XML 以外の任意の組み込みデータ・タイプの値を戻す式。

結果のデータ・タイプ、長さ、およびコード・ページは、 引数値のデータ・タイプ、長さ、およびコード・ページと同じです。 結果は、派生値と見なされ、NULL 値の場合もあります。

この関数は、引数の値から NULL 値を除いて求めた値の集合に対して適用されます。

この関数が空のセットに適用されると、結果は NULL 値になります。 それ以外の場合、結果はそのセットの中の最大値になります。

DISTINCT を指定しても結果に影響しないので、指定しないようにしてください。 これは、他の関係システムとの互換性の目的で組み込まれています。

  • DECFLOAT 特殊値が関係する結果: 引数のデータ・タイプが 10 進浮動小数点で、正または負の無限大、sNaN、NaN のいずれかが検出される場合、最大値は 10 進浮動小数点の順序付け規則を使用して判別されます。 同じ浮動小数点値を示す複数の表記 (例えば、2.00 と 2.0) が検出されると、どの表記が戻されるかは予測できません。

  • 例 1: EMPLOYEE 表を使用して、ホスト変数 MAX_SALARY (decimal (7, 2)) を月給 (SALARY/12) の最大値に設定します。
       SELECT MAX(SALARY) / 12
         INTO :MAX_SALARY
         FROM EMPLOYEE
    サンプル表を使用すると、結果として MAX_SALARY は 4395.83 に設定されます。
  • 例 2: PROJECT 表を使用して、 照合シーケンスの最後にくるプロジェクト名 (PROJNAME) をホスト変数 LAST_PROJ (char(24)) に設定します。
       SELECT MAX(PROJNAME)
         INTO :LAST_PROJ
         FROM PROJECT
    サンプル表を使用すると、結果として LAST_PROJ は「WELD LINE PLANNING」に設定されます。
  • 例 3: 前の例と同様に、 プロジェクト名にホスト変数 PROJSUPP を連結した場合に照合シーケンスで最後になるプロジェクト名を、 ホスト変数 LAST_PROJ (char(40)) に設定します。 PROJSUPP は "_Support" であり、データ・タイプは char(8) です。
       SELECT MAX(PROJNAME CONCAT PROJSUPP)
         INTO :LAST_PROJ
         FROM PROJECT
    サンプル表を使用した場合、結果として LAST_PROJ は "WELD LINE PLANNING_SUPPORT" に設定されます。