Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server-
Aggregatfunktion
Mithilfe einer Aggregatfunktion können Sie eine Zusammenfassung für alle Werte in einer Tabelle erstellen. Sie können beispielsweise eine Abfrage erstellen, z. B. folgendes, um den Gesamtpreis für alle Bücher in der titles
Tabelle anzuzeigen:
SELECT SUM(price)
FROM titles
Erstellen Sie mehrere Aggregationen in derselben Abfrage, indem Sie Aggregatfunktionen mit mehr als einer Spalte verwenden. Sie können beispielsweise eine Abfrage erstellen, die die Summe der price
Spalte und den Mittelwert der discount
Spalte berechnet.
Sie können dieselbe Spalte auf unterschiedliche Weise aggregieren (z. B. Summieren, Zählen und Mittelwertbildung) in derselben Abfrage. Die folgende Abfrage berechnet den Durchschnitt und fasst die price
-Spalte aus der titles
-Tabelle zusammen.
SELECT AVG(price), SUM(price)
FROM titles
Wenn Sie eine Suchbedingung hinzufügen, können Sie die Teilmenge der Zeilen aggregieren, die dieser Bedingung entsprechen.
Anmerkung
Sie können auch alle Zeilen in der Tabelle oder die Zeilen zählen, die eine bestimmte Bedingung erfüllen. Ausführliche Informationen finden Sie unter Zählen von Zeilen in einer Tabelle (Visual Database Tools).
Wenn Sie einen einzelnen Aggregationswert für alle Zeilen in einer Tabelle erstellen, werden nur die Aggregatwerte selbst angezeigt. Wenn Sie beispielsweise den Wert der price
Spalte der titles
Tabelle addieren, würden Sie nicht auch einzelne Titel, Herausgebernamen usw. anzeigen.
! Wenn Sie Zwischensummen erstellen, also Gruppen bilden, können Sie die Spaltenwerte für jede Gruppe anzeigen. Weitere Informationen finden Sie unter Gruppenzeilen in Abfrageergebnissen (Visual Database Tools).
Aggregieren von Werten für alle Zeilen
Stellen Sie sicher, dass die Tabelle, die Sie aggregieren möchten, bereits im Diagrammbereich vorhanden ist.
Klicken Sie mit der rechten Maustaste auf den Hintergrund des Diagrammbereichs, und wählen Sie dann im Kontextmenü Gruppieren nach aus. Der Abfrage- und Sicht-Designer fügt dem Datenblatt im Kriterienbereich die Spalte Gruppieren nach hinzu.
Fügen Sie die Spalte hinzu, die Sie im Kriterienbereich aggregieren möchten. Vergewissern Sie sich, dass die Spalte für die Ausgabe ausgewählt ist.
Der Abfrage- und Ansichts-Designer weist der Spalte, die Sie zusammenfassen, automatisch einen Spaltenalias zu. Sie können diesen Alias durch einen aussagekräftigeren ersetzen. Ausführliche Informationen finden Sie unter Erstellen von Spaltenaliasen (Visual Database Tools).
Wählen Sie in der Gruppieren nach-Rasterspalte die gewünschte Aggregatfunktion aus, z. B.: SUM, AVG, MIN, MAX, COUNT. Wenn Sie nur eindeutige Zeilen im Resultset aggregieren möchten, wählen Sie eine Aggregatfunktion mit den DISTINCT-Optionen aus, z. B. Min Distinct. Wählen Sie nicht Group By, Expression oder Where, da diese Optionen bei der Aggregation aller Zeilen nicht gelten.
Der Abfrage- und Ansichts-Designer ersetzt den Spaltennamen in der Anweisung im SQL-Bereich durch die angegebene Aggregatfunktion. Die SQL-Anweisung könnte z. B. wie folgt aussehen:
SELECT SUM(price) FROM titles
Wenn Sie mehrere Aggregationen in der Abfrage erstellen möchten, wiederholen Sie die Schritte 3 und 4.
Wenn Sie der Liste der Abfrageergebnisse oder der ORDER BY-Liste eine weitere Spalte hinzufügen, wird vom Abfrage- und Sicht-Designer automatisch der Begriff Gruppieren nach in die Gruppieren nach Spalte des Rasters eingefügt. Wählen Sie die entsprechende Aggregatfunktion aus.
Fügen Sie ggf. Suchbedingungen hinzu, um die Teilmenge der Zeilen anzugeben, die Sie zusammenfassen möchten.
Wenn Sie die Abfrage ausführen, zeigt der Ergebnisbereich die von Ihnen angegebenen Aggregationen an.
Anmerkung
Der Abfrage- und Sicht-Designer behält die Aggregatfunktionen so lange als Bestandteil der SQL-Anweisung im SQL-Bereich bei, bis Sie den Gruppieren nach-Modus explizit ausschalten. Wenn Sie Ihre Abfrage daher ändern, indem Sie den Typ ändern oder ändern, welche Tabellen oder Tabellenwertobjekte im Diagrammbereich vorhanden sind, enthält die resultierende Abfrage möglicherweise ungültige Aggregatfunktionen.
Siehe auch
Sortier- und Gruppenabfrageergebnisse (Visuelle Datenbanktools)
Zusammenfassen von Abfrageergebnissen (Visuelle Datenbanktools)