Hitachi

Hitachi Advanced Data Binder SQLリファレンス


7.22.2 AVG

平均値を求めます。

〈この項の構成〉

(1) 指定形式

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

(2) 指定形式の説明

AVG(〔ALL〕 値式)

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

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

AVG(DISTINCT 値式)

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

なお,同じ値がある場合,その値は1つだけカウント対象にします。例えば,値式の結果の値が2324の場合,実行結果は(2+3+4)/3=3になります。

(3) 規則

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

  2. 平均値を算出する際,有効数字以下は切り捨てられます。

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

    • 入力行数が0の場合

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

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

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

    項番

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

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

    1

    INTEGER

    INTEGER

    2

    SMALLINT

    3

    DECIMAL(m,n)

    DECIMAL(38,38−mn)

    4

    NUMERIC(m,n)

    5

    DOUBLE PRECISION

    DOUBLE PRECISION

    6

    FLOAT

  5. 集合関数の計算途中でオーバフローが発生した場合,オーバフローエラーとなります。

(4) 例題

例題

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

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

実行結果の例

[図データ]