SQL COUNT() 関数
- 前のページ SQL avg()
- 次のページ SQL first()
COUNT() 函数は指定された条件に一致する行数を返します。
SQL COUNT() 文法
SQL COUNT(column_name) 文法
COUNT(column_name) 函数は指定された列の値の数を返します(NULL は除きます):
SELECT COUNT(column_name) FROM table_name
SQL COUNT(*) 文法
COUNT(*) 函数はテーブル内のレコード数を返します:
SELECT COUNT(*) FROM table_name
SQL COUNT(DISTINCT column_name) 文法
COUNT(DISTINCT column_name) 函数は指定された列の異なる値の数を返します:
SELECT COUNT(DISTINCT column_name) FROM table_name
注釈:COUNT(DISTINCT) は ORACLE および Microsoft SQL Server に適用できますが、Microsoft Access には適用できません。
SQL COUNT(column_name) の例
以下の「Orders」テーブルがあります:
O_Id | OrderDate | OrderPrice | Customer |
---|---|---|---|
1 | 2008/12/29 | 1000 | Bush |
2 | 2008/11/23 | 1600 | Carter |
3 | 2008/10/05 | 700 | Bush |
4 | 2008/09/28 | 300 | Bush |
5 | 2008/08/06 | 2000 | Adams |
6 | 2008/07/21 | 100 | Carter |
今、"Carter" 顧客の注文数を計算したいです。
以下の SQL ステートメントを使用します:
SELECT COUNT(Customer) AS CustomerNilsen FROM Orders WHERE Customer='Carter'
以上の SQL ステートメントの結果は 2 です。なぜなら、Carter 顧客が 2 つの注文を持っているからです:
CustomerNilsen |
---|
2 |
SQL COUNT(*) の例
WHERE 子句を省略すると、以下のようになります:
SELECT COUNT(*) AS NumberOfOrders FROM Orders
結果セットは以下のようになります:
NumberOfOrders |
---|
6 |
テーブルの合計行数です。
SQL COUNT(DISTINCT column_name) の例
今、"Orders"テーブルに存在する異なる顧客の数を計算したいです。
以下の SQL ステートメントを使用します:
SELECT COUNT(DISTINCT Customer) AS NumberOfCustomers FROM Orders
結果セットは以下のようになります:
NumberOfCustomers |
---|
3 |
「Orders」テーブルに存在する異なる顧客(Bush、Carter、Adams)の数です。
- 前のページ SQL avg()
- 次のページ SQL first()