In diesem Artikel wird hauptsächlich die Verwendungsanalyse von „group by“ vorgestellt und Freunde, die sie benötigen, können darauf zurückgreifen.
1. Analyse der Verwendung von „group by“ in SQL.
Die Group By-Anweisung bedeutet auf Englisch wörtlich „Gruppieren nach (nach) bestimmten Regeln“.
Funktion: Teilen Sie einen Datensatz durch bestimmte Regeln in mehrere kleine Bereiche auf und führen Sie dann die Datenverarbeitung für mehrere kleine Bereiche durch.
Hinweis: Gruppieren bedeutet, zuerst zu sortieren und dann zu gruppieren!
Beispiel: Wenn Sie Gruppieren nach verwenden möchten, wird normalerweise das Wort „jeder“ verwendet. Beispielsweise gibt es jetzt eine Anforderung: Fragen Sie ab, wie viele Personen es in jeder Abteilung gibt. Wir müssen die Gruppierungstechnologie verwenden
select DepartmentID as '部门名称',COUNT(*) as '个数' from BasicDepartment group by DepartmentID
Dies ist die Gruppierung mithilfe des Felds „Gruppieren nach +“, in dem wir verstehen können, dass wir nach der Namens-ID von gruppiert sind die Abteilung
DepartmentID gruppiert den Datensatz und berechnet dann die statistischen Daten jeder Gruppe
2. Erklärung der Gruppe nach und mit
Voraussetzung: Sie müssen eine spezielle Funktion in der SQL-Sprachaggregationsfunktion verstehen.
Zum Beispiel: SUMME, ANZAHL, MAX, AVG usw. Der grundlegende Unterschied zwischen diesen Funktionen und anderen Funktionen besteht darin, dass sie im Allgemeinen mit mehreren Datensätzen arbeiten.
Das Schlüsselwort WHERE kann bei der Verwendung von Aggregatfunktionen nicht verwendet werden. Daher wird HAVING zur Aggregatfunktion hinzugefügt, um zu testen, ob die Abfrageergebnisse die Bedingungen erfüllen.
Having wird als Gruppierungsfilterbedingung bezeichnet. Dies ist die für die Gruppierung erforderliche Bedingung und muss daher in Verbindung mit „Group by“ verwendet werden.
Es ist zu beachten, dass die Ausführungsreihenfolge wie folgt lautet, wenn die Where-Klausel, die Group-By-Klausel, die Have-Klausel und die Aggregatfunktion gleichzeitig enthalten sind:
1. Where ausführen -Klausel, um die qualifizierten Daten zu finden;
2. Verwenden Sie die Group-By-Klausel, um die Daten zu gruppieren.
3. Führen Sie die Aggregatfunktion für die durch die Group-By-Klausel gebildeten Gruppen aus, um den Wert zu berechnen jeder Gruppe;
4. Verwenden Sie abschließend die have-Klausel, um Gruppen zu entfernen, die die Bedingungen nicht erfüllen.
Jedes Element in der Have-Klausel muss auch in der Auswahlliste erscheinen. Es gibt einige Datenbankausnahmen, wie z. B. Oracle.
Sowohl die Have-Klausel als auch die Where-Klausel können verwendet werden, um Einschränkungen festzulegen, damit die Abfrageergebnisse bestimmte Bedingungen erfüllen.
Die Haveing-Klausel schränkt Gruppen ein, nicht Zeilen. Die Ergebnisse von Aggregatfunktionsberechnungen können als Bedingungen verwendet werden. Aggregatfunktionen können nicht in der Where-Klausel verwendet werden, sie können jedoch in der Have-Klausel verwendet werden.
Das obige ist der detaillierte Inhalt vonZusammenfassung der Verwendung von „group by' und „have' in SQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!