Freigeben über


Angeben von Bedingungen für Gruppen (Visual Database Tools)

Gilt für:SQL Server-

Sie können die Gruppen einschränken, die in einer Abfrage angezeigt werden, indem Sie eine Bedingung angeben, die für Gruppen als Ganzes gilt – eine HAVING-Klausel. Nachdem die Daten gruppiert und aggregiert wurden, werden die Bedingungen in der HAVING-Klausel angewendet. Nur die Gruppen, die die Bedingungen erfüllen, werden in der Abfrage angezeigt.

Sie können beispielsweise den Durchschnittspreis aller Bücher für jeden Herausgeber in einer titles Tabelle anzeigen, aber nur, wenn der durchschnittliche Preis 10,00 $ überschreitet. In diesem Fall können Sie eine HAVING-Klausel mit einer Bedingung wie AVG(price) > 10angeben.

Anmerkung

In einigen Fällen möchten Sie möglicherweise einzelne Zeilen aus Gruppen ausschließen, bevor Sie eine Bedingung auf Gruppen als Ganzes anwenden. Ausführliche Informationen finden Sie unter Verwenden von HAVING- und WHERE-Klauseln in der gleichen Abfrage (Visual Database Tools).

Sie können komplexe Bedingungen für eine HAVING-Klausel erstellen, indem Sie AND und OR verwenden, um Bedingungen zu verknüpfen. Ausführliche Informationen zur Verwendung von AND und ODER in Suchbedingungen finden Sie unter Angeben mehrerer Suchbedingungen für eine Spalte (Visuelle Datenbanktools).

So geben Sie eine Bedingung für eine Gruppe an

  1. Geben Sie die Gruppen für Ihre Abfrage an. Weitere Informationen finden Sie unter Gruppenzeilen in Abfrageergebnissen (Visual Database Tools).

  2. Wenn sie sich noch nicht im bereich Kriterienbefindet, fügen Sie die Spalte hinzu, auf der Sie die Bedingung basieren möchten. (Meistens umfasst die Bedingung eine Spalte, die bereits eine Gruppe oder Zusammenfassungsspalte ist.) Sie können keine Spalte verwenden, die nicht Teil einer Aggregatfunktion oder der GROUP BY-Klausel ist.

  3. Geben Sie in der Spalte Filter die Bedingung an, die auf die Gruppe angewendet werden soll.

    Der Abfrage- und Ansichts-Designer erstellt automatisch eine HAVING-Klausel in der Anweisung im SQL-Bereich, z. B. im folgenden Beispiel:

    SELECT pub_id, AVG(price)  
    FROM titles  
    GROUP BY pub_id  
    HAVING (AVG(price) > 10)  
    
  4. Wiederholen Sie die Schritte 2 und 3 für jede zusätzliche Bedingung, die Sie angeben möchten.

Siehe auch

Sortier- und Gruppenabfrageergebnisse (Visuelle Datenbanktools)