統計関数

統計関数は、レコードのセットから 1 つの値を返します。統計関数は、SELECT ステートメントの一部として使用するか、AVG( "給与" ) のようにフィールド名とともに使用するか、または AVG ( "給与" * 1.07) のように列式と組み合わせて使用することができます。

列式の前に DISTINCT 演算子を指定して、重複する値を取り除くことができます。

コピー
COUNT (DISTINCT "姓" )

この例では、固有な姓の値のみがカウントされます。

統計関数

返される値

SUM

数値フィールド式の値の合計。たとえば、SUM ( "給与" ) は、すべての給与フィールドの値の合計を返します。

AVG

数値フィールド式の値の平均。たとえば、AVG ( "給与" ) は、すべての給与フィールドの値の平均を返します。

COUNT

任意の数値式の値の数。たとえば、COUNT ( "名前" ) は、名前の値の数を返します。COUNT をフィールド名とともに使用した場合、COUNT は NULL 以外のフィールドの値の数を返します。COUNT(*) は特別な例で、NULL 値が含まれるレコードを含む、セット内のレコードの数を返します。

MAX

任意のフィールド式の最大値。たとえば、MAX ( "給与" ) は、給与フィールドの最大値を返します。

MIN

任意のフィールド式の最小値。たとえば、MIN ( "給与" ) は、給与フィールドの最小値を返します。

コピー
SELECT SUM ("営業データ"."金額") AS "統計" FROM "営業データ"

SELECT AVG ("営業データ"."金額") AS "統計" FROM "営業データ"

SELECT COUNT ("営業データ"."金額") AS "統計" FROM "営業データ"

SELECT MAX ("営業データ"."金額") AS "統計" FROM "営業データ" WHERE "営業データ"."金額" < 300000

SELECT MIN ("営業データ"."金額") AS "統計" FROM "営業データ" WHERE "営業データ"."金額" > 300000

他の関数に対する引数として統計関数を使用することはできません。他の関数に対する引数として統計関数を使用した場合、FileMaker ソフトウェアはエラーコード 8309 ([Expressions involving aggregations are not supported]) を返します。たとえば、SUM という統計関数は ROUND 関数の引数として使用できないため、次のステートメントは無効になります:

コピー
SELECT ROUND(SUM( "給与" ), 0) FROM "給与支払名簿"

ただし、統計関数では引数として数値を返す関数を使用することは可能です。次のステートメントは有効になります。

コピー
SELECT SUM(ROUND( "給与", 0)) FROM "給与支払名簿"