COUNT関数は、特定の属性の値を持つレコードの数を返します。
COUNT関数は、特定のフィールドの値がNULL以外であるレコードの数を、GROUP BYの結果ごとに数えます。COUNTは、複数割当て属性(セット)および単一割当て属性の両方で使用できます。
複数割当て属性の場合、COUNT関数は、グループ内のNULLではないすべてのセットを数えます。セットはNULLにはなりませんが、空にはなる可能性があるため、COUNTは、空のセットを持つレコードも数えます(つまり、指定した複数割当て属性に対して割当てを持たないレコードに対しては、空のセットを返します)。結果から空のセットを無視する方法は、下の2番目の例を参照してください。
COUNT(<attribute>)ここで、attributeは、複数割当て属性または単一割当て属性です。
Record 1: Size=small, Color=red, Color=white Record 2: Size=small, Color=blue, Color=green Record 3: Size=small, Color=black Record 4: Size=small
RETURN result AS SELECT COUNT(Color) AS Total GROUP BY Size
Record 1: Size=small, Total=4
Sizeの値がすべてのレコードで同一であるため、グループは1つのみであり、したがって1レコードしか存在しません。このグループの場合、レコード1-3にはColorが割り当てられており(空ではないセットを返します)、レコード4にはColorが割り当てられていないため(空のセットを返します)、Totalの値は4です。
RETURN result AS SELECT COUNT(Color) WHERE (Color IS NOT EMPTY) AS Total GROUP BY Size
Record 1: Size=small, Total=3これは、レコード4の空のセットが数えられていないためです。
RETURN results AS SELECT COUNT(1) AS recordCount WHERE WineID IS NOT NULL GROUP
文の結果は、データ・レコードの総数を表す整数になるはずです。WHERE句は、各レコードの主キー・プロパティがNULL以外の値を持つかどうかをチェックして、データ以外のレコード(原始レコードなど)をすべて除外します。