

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# COUNT 函數
<a name="COUNT"></a>

 COUNT 函數計算表達式所定義的列數。

COUNT 函數有下列版本。
+ COUNT ( \$1 ) 計算目標資料表中的所有列數，而不論是否包含 Null。
+ COUNT (*expression*) 計算特定欄或表達式中不含 NULL 值的列數。
+ COUNT (DISTINCT *expression*) 計算某欄或表達式中相異非 NULL 值的個數。

## 語法
<a name="COUNT-synopsis"></a>

```
COUNT( * | expression )
```

```
COUNT ( [ DISTINCT | ALL ] expression )
```

## 引數
<a name="COUNT-arguments"></a>

 *expression *   
函數運算的目標欄或表達式。COUNT 函數支援所有引數資料類型。

DISTINCT \$1 ALL  
如果指定引數 DISTINCT，則函數在計數之前會從指定的表達式中消除所有重複值。如果指定引數 ALL，則函數在計數時會保留表達式中的所有重複值。ALL 為預設值。

## 傳回類型
<a name="Supported_data_types_count"></a>

COUNT 函數傳回 BIGINT。

## 範例
<a name="COUNT-examples"></a>

計算佛羅里達州的所有使用者人數：

```
select count(*) from users where state='FL';

count
-------
510
```

計算 EVENT 表中的所有事件名稱：

```
select count(eventname) from event;

count
-------
8798
```

計算 EVENT 表中的所有事件名稱：

```
select count(all eventname) from event;

count
-------
8798
```

從 EVENT 資料表計算所有唯一會場 ID 的數目：

```
select count(distinct venueid) as venues from event;

venues
--------
204
```

計算每個賣方列出整批銷售門票超過四張的次數。結果依賣方 ID 分組：

```
select count(*), sellerid from listing 
where numtickets > 4
group by sellerid
order by 1 desc, 2;

count | sellerid
------+----------
12    |    6386
11    |    17304
11    |    20123
11    |    25428
...
```