Hitachi

Hitachi Advanced Database SQLリファレンス


7.23.4 MAX

最大値を求めます。

〈この項の構成〉

(1) 指定形式

一般集合関数MAX::={MAX(〔ALL〕 値式)|MAX(DISTINCT 値式)}

注 どちらの形式で指定しても結果は同じになります。

(2) 指定形式の説明

MAX(〔ALL〕 値式)

値式の結果の最大値を求めます。値式については,「7.21 値式」を参照してください。

ALLは省略できます。指定のありなしに関係なく結果は同じになります。

MAX(DISTINCT 値式)

値式の結果の最大値を求めます。値式については,「7.21 値式」を参照してください。

(3) 規則

  1. ナル値は集計対象に含まれません。

  2. 次に示す場合,実行結果はナル値になります。

    • 入力行数が0の場合

    • 集計対象の値がすべてナル値の場合

  3. 値式に指定できるデータ型と一般集合関数MAXの実行結果のデータ型を次の表に示します。

    表7‒24 値式に指定できるデータ型と一般集合関数MAXの実行結果のデータ型の関係

    項番

    値式に指定できるデータ型

    一般集合関数MAXの実行結果のデータ型

    1

    BIGINT

    BIGINT

    2

    INTEGER

    INTEGER

    3

    SMALLINT

    SMALLINT

    4

    DECIMAL(m,n)

    DECIMAL(m,n)

    5

    NUMERIC(m,n)

    6

    DOUBLE PRECISION

    DOUBLE PRECISION

    7

    FLOAT

    8

    REAL

    REAL

    9

    CHARACTER(n)

    CHARACTER(n)

    10

    VARCHAR(n)

    VARCHAR(n)

    11

    STRING

    STRING

    12

    DATE

    DATE

    13

    TIME(p)

    TIME(p)

    14

    TIMESTAMP(p) WITHOUT TIME ZONE

    TIMESTAMP(p) WITHOUT TIME ZONE

    15

    TIMESTAMP(p) WITH TIME ZONE

    TIMESTAMP(p) WITH TIME ZONE

    16

    BOOLEAN

    BOOLEAN

    注※

    整数データ型のデータ形式がレガシー形式の場合は,実行結果のデータ型はINTEGER型になります。

(4) 例題

例題1

社員表(EMPLIST)から,最年長の男性社員の年齢(AGE)を求めます。

SELECT MAX("AGE") AS "MAX-AGE"
    FROM "EMPLIST"
       WHERE "SEX"='M'

実行結果の例

[図データ]

例題2

社員表(EMPLIST)から,最年長の社員の年齢(AGE)を,部門(SCODE)ごとに求めます。

SELECT "SCODE",MAX("AGE") AS "MAX-AGE"
    FROM "EMPLIST"
        GROUP BY "SCODE"

実行結果の例

[図データ]