Abfragen [basics]: Gruppierungen nutzen

Abfragen liefern meist immer je einen Datensatz entsprechend der Anzahl der Datensätze der zugrunde liegenden Tabellen. Dabei werden in der Regel die Werte aus den Feldern der Datenquelle abgebildet. Manchmal führen wir in Abfragen Operationen auf diesen Feldern aus, beispielsweise um die Inhalte mehrerer Felder zusammenzuführen oder diese zu formatieren. Wir können in einer Abfrage jedoch auch mehrere Datensätze der Datenquelle zusammenfassen – beispielsweise, um gleichartige Datensätze nur einmal abzubilden oder um die Werte eines oder mehrerer Felder ansonsten gleicher Datensätze zusammenzufassen. So können wir Summen, Mengen und andere Funktionen anwenden. Die Abfragen, mit denen wir solche Ansichten realisieren, nennen sich Gruppierungsabfragen. Dieser Artikel liefert die Grundlagen zum Erstellen solcher Abfragen.

Beispieldatenbank

Die Beispiele dieses Artikels finden Sie in der Datenbank AbfragenBasics_Gruppierungen.accdb.

Beispieltabelle

Als Beispieltabelle verwenden wir die Tabelle tblSpenden, die wie in Bild 1 aussieht und neben dem Primärschlüsselfeld namens SpendeID drei weitere Felder namens Spendendatum, Spendenbetrag und Spendenprojekt enthält.

Tabelle mit Beispieldaten für Gruppierungsabfragen

Bild 1: Tabelle mit Beispieldaten für Gruppierungsabfragen

Diese bietet ausreichend Möglichkeiten zum Gruppieren, zum Beispiel nach dem Spendendatum oder nach dem Spendenprojekt.

Basisabfrage erstellen

Als Grundlage für die folgenden Beispiele verwenden wir eine neue Abfrage, die wir über den Ribbonbefehl Abfrageentwurf des Bereichs Abfragen im Ribbontab Erstellen anlegen.

Dieser Abfrage fügen wir die Tabelle tblSpenden hinzu und ziehen alle enthaltenen Felder in das Entwurfsraster (siehe Bild 2).

Beispielabfrage als Basis für die Gruppierungen

Bild 2: Beispielabfrage als Basis für die Gruppierungen

Gruppieren-Funktion aktivieren

Nun stellt sich die Frage: Wie wollen wir die Datensätze dieser Abfrage gruppieren Dazu wechseln wir zum Ribbontab Abfrageentwurf und wähle aus dem Bereich Einblenden/Ausblenden den Befehl Summen aus. Dies blendet die Zeile Funktion ein, die für alle Felder zunächst den Wert Gruppierung anzeigt (siehe Bild 3).

Einblenden der Zeile Funktion mit dem Wert Gruppierung

Bild 3: Einblenden der Zeile Funktion mit dem Wert Gruppierung

Wie wirkt sich das auf das Abfrageergebnis aus In der aktuellen Konstellation gar nicht, wir erhalten alle 100 Datensätze, die wir auch in der Tabelle vorfinden. Wozu dann überhaupt gruppieren In diesem Beispiel ist das Gruppieren für keinen Zweck zielführend, denn die Gruppierung bezieht sich immer auf die Gesamtheit der abgebildeten Felder. Und da wir aktuell das Primärschlüsselfeld in das Abfrageergebnis einbeziehen, bekommen wir immer alle Datensätze zurückgeliefert, denn das Primärschlüsselfeld enthält immer eindeutige Werte.

Gruppierte Abfragen können nicht bearbeitet werden

Was wir jedoch bereits feststellen können: Das Ergebnis einer Abfrage mit einer Gruppierung kann nicht mehr bearbeitet werden und wir können auch keine neuen Datensätze hinzufügen – siehe Bild 4.

Die Datensätze einer gruppierten Abfrage können weder bearbeitet werden noch können wir neue Datensätze hinzufügen.

Bild 4: Die Datensätze einer gruppierten Abfrage können weder bearbeitet werden noch können wir neue Datensätze hinzufügen.

Reine Gruppierungsfunktion

Wenn wir nur die Gruppierungsfunktion nutzen wollen, also Datensätze zusammenfassen wollen, deren abgebildete Felder alle gleich sind, müssen wir also das Primärschlüsselfeld zwingend aus dem Abfrageentwurf entfernen. In diesem Beispiel würde sich das allerdings erst auf das Ergebnis auswirken, wenn wir mindestens einen Datensatz verwenden, dessen Inhalte aller Felder mit dem eines weiteren Datensatzes übereinstimmen. Um das nachzustellen, haben wir die Inhalte der ersten beiden Datensätze angeglichen (siehe Bild 5).

Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

den kompletten Artikel im PDF-Format mit Beispieldatenbank

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar