SQL COUNT() 関数

❮ 前章へ 次章へ ❯

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 では動きません。


デモ・データベース

このチュートリアルでは、よく知られた Northwind サンプルデータベースを使用します。

次は、"Orders" テーブルからの抜粋です:

OrderID CustomerID EmployeeID OrderDate ShipperID
10265 7 2 1996-07-25 1
10266 87 3 1996-07-26 3
10267 25 4 1996-07-29 1

SQL COUNT(column_name) の例

次の SQL 文は、"Orders" テーブルの "CustomerID"=7 からの注文数をカウントします:

SELECT COUNT(CustomerID) AS OrdersFromCustomerID7 FROM Orders
WHERE CustomerID=7;

Try it Yourself ❯

SQL COUNT(*) の例

次の SQL 文は、"Orders" テーブルの注文の合計数をカウントします:

SELECT COUNT(*) AS NumberOfOrders FROM Orders;

Try it Yourself ❯

SQL COUNT(DISTINCT column_name) の例

次の SQL 文は、"Orders" テーブル内のユニークな顧客の数をカウントします:

SELECT COUNT(DISTINCT CustomerID) AS NumberOfCustomers FROM Orders;

Try it Yourself ❯

❮ 前章へ 次章へ ❯