Aracılığıyla paylaş


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.

Topic link iconTransact-SQL sözdizimi kuralları

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)