使用SQL COUNT函數對數據庫表中的值進行計數

使用SQL COUNT來返回各種數據

查詢元素是結構化查詢語言(SQL)的重要組成部分。 它根據關係數據庫中的特定標準檢索數據。 您可以使用SQL查詢(包括COUNT()函數)從數據庫中獲取各種信息。

SQL COUNT()函數特別有用,因為它允許您根據用戶指定的條件對數據庫記錄進行計數。 您可以使用它來計算表中的所有記錄,計算列中的唯一值,或者計算滿足特定條件的記錄的次數。

本文將簡要介紹這些場景。

這些示例基於常用的Northwind數據庫,該數據庫經常隨數據庫產品一起提供,用作教程。

以下是數據庫產品表的摘錄:

產品表
產品ID 產品名稱 供應商ID 單位數量 單價 庫存量
1 1 10盒x 20袋 18.00 39
2 1 24 - 12盎司瓶 19.00 17
3 八角糖漿 1 12 - 550毫升的瓶子 10.00 13
4 廚師安東的Cajun調味料 2 48 - 6盎司罐子 22.00 53
廚師安東的濃湯混合 2 36盒 21.35 0
6 祖母的波森莓蔓延 3 12 - 8盎司罐子 25.00 120
7 伯伯叔叔的有機幹梨 3 12 - 1磅包裝。 30.00 15

計算表中的記錄

最基本的查詢是計算表中的記錄數。 如果您想知道產品表中存在的項目數量,請使用以下查詢:

SELECT COUNT(*)
FROM產品;

該查詢返回表中的行數。 在這個例子中,它是7。

計算列中的唯一值

您還可以使用COUNT函數來確定列中唯一值的數量。 在該示例中,如果要標識產品出現在生產部門中的不同供應商的數量,可以使用以下查詢完成此操作:

SELECT COUNT(DISTINCT SupplierID)
FROM產品;

該查詢返回在SupplierID列中找到的不同值的數量。 在這種情況下,答案是3,代表1,2和3。

計數記錄匹配標準

將COUNT()函數與WHERE子句結合起來,以確定符合特定條件的記錄數。 例如,假設部門經理想要了解部門中的庫存水平。 以下查詢標識代表UnitsInStock少於50個單位的行數:

SELECT COUNT(*)
FROM產品
WhereUnitsInStock <50;

在這種情況下,查詢將返回 4,代表Chai,Chang,Aniseed Syrup和Bob叔叔的有機幹梨。

對於試圖匯總數據以滿足業務需求的數據庫管理員而言,COUNT()子句可能非常有用。 通過一點創意,您可以將COUNT()函數用於各種目的。