SQL COUNT() 函数


SQL COUNT() 函数

COUNT() 函数返回符合指定条件的行数。

SQL COUNT(column_name) 语法

COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):

SELECT COUNT(column_name)
FROM table_name
WHERE condition;

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" 表的数据:

ProductID ProductName SupplierID CategoryID Unit Price
1 Chais 1 1 10 boxes x 20 bags 18
2 Chang 1 1 24 - 12 oz bottles 19
3 Aniseed Syrup 1 2 12 - 550 ml bottles 10
4 Chef Anton's Cajun Seasoning 2 2 48 - 6 oz jars 22
5 Chef Anton's Gumbo Mix 2 2 36 boxes 21.35

SQL COUNT(column_name) 实例

以下SQL语句查找产品数量:

实例

SELECT COUNT(ProductID)  
FROM Products;

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;