Share via


Vorgehensweise: Wertzusammenfassung oder -aggregation für alle Zeilen in einer Tabelle (Visual Database Tools)

Mithilfe einer Aggregatfunktion können Sie eine Zusammenfassung für alle Werte in einer Tabelle erstellen. Sie können z. B. folgende Abfrage erstellen, um den Gesamtpreis aller Bücher in der Tabelle titles anzeigen zu lassen:

SELECT SUM(price)
FROM titles

Sie können mehrere Aggregationen in derselben Abfrage erstellen, wenn Sie Aggregatfunktionen auf mehrere Spalten anwenden. Beispielsweise können Sie eine Abfrage erstellen, in der die Gesamtsumme der price-Spalte und der Durchschnittswert der discount-Spalte berechnet werden.

Sie können jedoch auch eine einzige Spalte in derselben Abfrage auf unterschiedliche Weise aggregieren (z. B. Ausgabe der Gesamtsumme, der Anzahl und des Durchschnittswerts). In der folgenden Abfrage wird beispielsweise der Durchschnittswert und die Gesamtsumme für die price-Spalte in der Tabelle titles berechnet:

SELECT AVG(price), SUM(price)
FROM titles

Wenn Sie eine Suchbedingung hinzufügen, können Sie die Teilmenge von Zeilen aggregieren, die die entsprechende Bedingung erfüllt.

HinweisHinweis

Sie können außerdem alle Zeilen in der Tabelle oder nur die Zeilen zählen, die eine bestimmte Bedingung erfüllen. Einzelheiten dazu finden Sie unter Vorgehensweise: Zählen der Zeilen in einer Tabelle (Visual Database Tools).

Wenn Sie für alle Zeilen in einer Tabelle einen einzigen Aggregatwert erstellen, werden nur die Aggregatwerte selbst angezeigt. Wenn Sie z. B. die Gesamtsumme des Werts für die price-Spalte in der Tabelle titles berechnen, werden die einzelnen Buchtitel, Herausgebernamen usw. nicht angezeigt.

HinweisHinweis

Wenn Sie Teilergebnisse berechnen, d. h. Gruppen erstellen, können Sie die Spaltenwerte für jede Gruppe anzeigen lassen. Einzelheiten dazu finden Sie unter Vorgehensweise: Gruppieren von Zeilen in Abfrageergebnissen (Visual Database Tools).

So aggregieren Sie Werte für alle Zeilen

  1. Stellen Sie sicher, dass die Tabelle, die Sie aggregieren möchten, bereits im Diagrammbereich angezeigt wird.

  2. Klicken Sie mit der rechten Maustaste auf den Hintergrund des Diagrammbereichs, und wählen Sie im Kontextmenü die Option Gruppieren nach aus. Der Abfrage- und Ansicht-Designer fügt dem Datenblatt im Kriterienbereich die Spalte Gruppieren nach hinzu.

  3. Fügen Sie dem Kriterienbereich die Spalte hinzu, die aggregiert werden soll. Vergewissern Sie sich, dass die Spalte für die Ausgabe ausgewählt ist.

    Der Abfrage- und Ansicht-Designer weist der Spalte, die zusammengefasst wird, automatisch einen Spaltenalias zu. Sie können diesen Alias durch einen aussagekräftigeren Alias ersetzen. Einzelheiten dazu finden Sie unter Vorgehensweise: Erstellen von Spaltenaliasen (Visual Database Tools).

  4. Wählen Sie in der Spalte des DatenBlatts Gruppieren nach die gewünschte Aggregatfunktion, z. B.: SUM, AVG, MIN, MAX oder COUNT, aus. Wenn im Resultset nur eindeutige Zeilen aggregiert werden sollen, wählen Sie eine Aggregatfunktion mit den DISTINCT-Optionen, z. B. Min Distinct, aus. Verwenden Sie nicht Gruppieren nach, Ausdruck oder Where, da diese Optionen bei einer Aggregation aller Zeilen nicht anwendbar sind.

    Der Abfrage- und Ansicht-Designer ersetzt den Spaltennamen in der Anweisung im SQL-Bereich durch die angegebene Aggregatfunktion. Die SQL-Anweisung könnte z. B. folgendermaßen aussehen:

    SELECT SUM(price)
    FROM titles
    
  5. 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 Ansicht-Designer automatisch der Begriff Gruppieren nach in die Spalte des DatenBlatts Gruppieren nach eingefügt. Wählen Sie die entsprechende Aggregatfunktion aus.

  6. Fügen Sie bei Bedarf Suchbedingungen hinzu, um die Teilmenge der zusammenzufassenden Zeilen anzugeben.

Bei Ausführung der Abfrage werden die angegebenen Aggregationen im Ergebnisbereich angezeigt.

HinweisHinweis

Der Abfrage- und Ansicht-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 daher den Typ der Abfrage ändern oder ändern, welche Tabellen bzw. Tabellenwertobjekte im Diagrammbereich vorhanden sind, kann die resultierende Abfrage unter Umständen ungültige Aggregatfunktionen enthalten.