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;
WHERE CustomerID=7;
SQL COUNT(*) 實例
下面的 SQL 語句計算 "Orders" 表中的訂單總數:
實例
SELECT COUNT(*) AS NumberOfOrders FROM Orders;
SQL COUNT(DISTINCT column_name) 實例
下面的 SQL 語句計算 "Orders" 表中不同客戶的數目:
實例
SELECT COUNT(DISTINCT CustomerID) AS NumberOfCustomers FROM Orders;