COUNT 関数

COUNTは式の行数を数える集約関数です。(集約 (集合関数)を参照してください。) COUNTはどのような型の式でも利用できます。

構文

COUNT ( [ DISTINCT | ALL ]  ) 

DISTINCTという限定詞により重複を取り除くことができます。ALLという限定詞により重複をそのままにすることができます。もしDISTINCTもALLも指定されなければ、ALLが与えられたものとします。例えば、列に1、1、1、1および2という値があった場合、COUNT(col)はCOUNT(DISTINCT col)より大きな数を返します。

一つの選択式には、唯一つのDISTINCT集約式をとることができます。例えば次のように問合せる事はできません。

-- 問い合わせできない
SELECT COUNT (DISTINCT flying_time), SUM (DISTINCT miles)
FROM Flights

には複数の列への参照や式を置く事ができますが、他の集約や副問合せを置くことはできません。 もしがNULLと評価される場合、その評価値について集約は行われません。

COUNTによる結果のデータ型は、INTEGERです。

-- それぞれの地域の国の数を数え、
-- 二国以上ある地域を表示する。
SELECT COUNT (country), region
FROM Countries
GROUP BY region
HAVING COUNT (country) > 1