Count-Funktion (Microsoft Access SQL)

Gilt für: Access 2013 | Access 2016

Berechnet die Anzahl von Datensätzen, die von einer Abfrage zurückgegeben werden.

Syntax

Count(Ausdr)

Der Ausdr-Platzhalter stellt einen Zeichnfolgenausdruck dar, der das Feld angibt, in dem sich die zu zählenden Daten befinden, oder einen Ausdruck, der eine Berechnung auf der Basis der Daten in diesem Feld durchführt. Operanden im Ausdr-Platzhalter können den Namen eines Tabellenfelds oder einer Funktion (bei der es sich um eine systemeigene oder benutzerdefinierte, jedoch nicht um eine andere SQL-Aggregatfunktion handeln darf) enthalten. Sie können beliebige Daten, einschließlich Text, zählen.

Hinweise

Verwenden Sie Count , um die Anzahl der Datensätze in einer zugrunde liegenden Abfrage zu zählen. Sie können beispielsweise Count verwenden, um die Anzahl der Bestellungen zu zählen, die in ein bestimmtes Land oder eine bestimmte Region versandt wurden.

Obwohl mit dem Ausdr-Platzhalter eine Berechnung für ein Feld durchgeführt werden kann, wird von der Count-Funktion einfach die Anzahl von Datensätzen gezählt. Dabei ist es unerheblich, welche Werte in den Datensätzen gespeichert sind.

Die Count-Funktion zählt keine Datensätze mit NULL-Feldern , es sei denn , expr ist das Sternchen (*) Platzhalterzeichen. Wenn Sie ein Sternchen verwenden, berechnet Count die Gesamtzahl der Datensätze, einschließlich der Datensätze, die NULL-Felder enthalten. Count( * ) ist wesentlich schneller als Count( [ Spaltenname ] ). Schließen Sie das Sternchen nicht in Anführungszeichen (' ') ein.

Im folgenden Beispiel wird die Anzahl der Datensätze in der Tabelle Orders berechnet:

SELECT Count(*) 
AS TotalOrders FROM Orders;

Wenn expr mehrere Felder identifiziert, zählt die Count-Funktion einen Datensatz nur, wenn mindestens eines der Felder nicht NULL ist. Wenn alle angegebenen Felder NULL sind, wird der Datensatz nicht gezählt. Trennen Sie die Feldnamen durch ein kaufmännisches und (&). Das folgende Beispiel zeigt, wie Sie die Anzahl auf Datensätze beschränken können, in denen "ShippedDate" oder "Freight" nicht NULL ist:

SELECT 
Count('ShippedDate & Freight') 
AS [Not Null] FROM Orders;

Verwenden Sie Count in einem Abfrageausdruck. Sie können diesen Ausdruck auch in der SQL-Eigenschaft eines QueryDef-Objekts verwenden oder beim Erstellen eines Recordset-Objekts, das auf einer SQL-Abfrage basiert.

Beispiel

Im folgenden Beispiel wird in der Orders-Tabelle (Bestellungen) die Anzahl von Bestellungen, die nach Großbritannien ausgeliefert wurden, berechnet.

In diesem Beispiel wird die EnumFields-Prozedur aufgerufen, die im Beispiel für die SELECT-Anweisung enthalten ist.

Sub CountX() 
 
    Dim dbs As Database, rst As Recordset 
 
    ' Modify this line to include the path to Northwind 
    ' on your computer. 
    Set dbs = OpenDatabase("Northwind.mdb") 
    
    ' Calculate the number of orders shipped  
    ' to the United Kingdom. 
    Set rst = dbs.OpenRecordset("SELECT" _ 
        & " Count (ShipCountry)" _ 
        & " AS [UK Orders] FROM Orders" _ 
        & " WHERE ShipCountry = 'UK';") 
     
    ' Populate the Recordset. 
    rst.MoveLast 
     
    ' Call EnumFields to print the contents of the  
    ' Recordset. Pass the Recordset object and desired 
    ' field width. 
    EnumFields rst, 25 
 
    dbs.Close 
 
End Sub 

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.