COUNT (Transact-SQL)
Bir gruptaki öğeleri verir.COUNT çalışır ister count_big işlev.Iki işlev arasındaki tek fark, dönüş değerleri ' dir.COUNT her zaman döndüren bir int veri değeri yazın. COUNT_BIG her zaman döndüren bir bigint veri değeri yazın. Tarafından izlenmesi gereken ÜZERINDE yan tümce.
COUNT ( { [ [ ALL | DISTINCT ] expression ] | * } )
Bağımsız değişkenler
ALL
toplamak işlev, tüm değerlere uygulanır.ALL varsayılan olur.DISTINCT
COUNT benzersiz nonnull değerlerin sayısını döndüren belirtir.expression
Iş bir ifade dışında herhangi bir türtext, image, veya ntext. toplamak işlevleri ve alt sorgular izin verilmez.*
Tüm satırların toplam satır sayısını döndürmek için sayılması belirtir bir tablo.SAYI)*) hiçbir parametre ve DISTINCT ile kullanılamaz.SAYI)*) gerektirmez.expression parametre tanım olarak, herhangi sütun bilgi kullanmadığından,. SAYI)*) satır sayısı bir belirtilen sayı tablo olmadan kopyalarını rid.Her satır ayrı olarak sayılır.Bu, null değerler içeren satırları içerir.
Dönüş Türleri
int
Remarks
COUNT(*), gruptaki öğe sayısını döndürür.Bu, yinelemeler ve NULL değerleri içerir.
(TÜM SAYISI expression) verir expression bir gruptaki her satır için nonnull değerlerin sayısını verir.
(FARKLI BİR SAYISI expression) verir expression bir grup içindeki her satırı için ve nonnull benzersiz değerler sayısını verir.
Için 2'den büyük dönüş değerlerini ^ 31-1, COUNT, hata üretir.COUNT_BIG kullanın.
Örnekler
C.COUNT ve DISTINCT kullanma
Aşağıdaki örnek listeler, altında çalışan bir çalışan numarası farklı başlıklar Adventure Works Cycles basılı tutabilirsiniz.
USE AdventureWorks;
GO
SELECT COUNT(DISTINCT Title)
FROM HumanResources.Employee;
GO
Here is the result set.
-----------
67
(1 row(s) affected)
b.COUNT(*) kullanma
Aşağıdaki örnek sırasında çalışan çalışanların toplam sayısını bulur. Adventure Works Cycles.
USE AdventureWorks;
GO
SELECT COUNT(*)
FROM HumanResources.Employee;
GO
Here is the result set.
-----------
290
(1 row(s) affected)
c.Diğer toplamları ile COUNT(*) kullanma
Aşağıdaki örnek, gösterir. COUNT(*) diğer toplamak işlevleri listesinden seçim ile birleştirilebilir.
USE AdventureWorks;
GO
SELECT COUNT(*), AVG(Bonus)
FROM Sales.SalesPerson
WHERE SalesQuota > 25000;
GO
Here is the result set.
----------- ---------------------
14 3472.1428
(1 row(s) affected)
See Also